home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #2 / Amiga Plus CD - 1995 - No. 2.iso / internet / faq / englisch / mh < prev    next >
Encoding:
Text File  |  1995-04-11  |  83.9 KB  |  2,421 lines

  1. Archive-name: mail/mh-faq/part1
  2. Last-modified: $Date: 1994/12/13 23:56:39 $
  3. Version: $Revision: 94.12 $
  4. Posting-Frequency: monthly
  5.  
  6.   This is a living list of frequently asked questions on the mailer
  7.   user interface, Mail Handler, or MH.  The point of this is to
  8.   circulate existing information, and avoid rehashing old answers.
  9.   Better to build on top than start again.  Please read this document
  10.   before ever posting to this newsgroup.
  11.  
  12.   This article is posted monthly.  If it has already expired and
  13.   you're not reading this, you can hope that you saved the
  14.   instructions to retrieve the FAQ (see "Where can I get MH") so that
  15.   you can get a copy through other means.
  16.  
  17.   Please do not post an answer when someone posts a frequently asked
  18.   question; rather, email the relevant section of the FAQ to eliminate
  19.   unnecessary traffic in this newsgroup.
  20.  
  21.   This list depends on your comments, additions and fixes: please send
  22.   them to Bill Wohler <wohler@newt.com>.
  23.  
  24.   Copyright 1991, 1992, 1993, 1994 Bill Wohler
  25.  
  26.   Permission to use, copy, distribute, and translate this document for
  27.   any non-commercial purpose is hereby granted, provided that this
  28.   copyright notice appears in all copies.  Commercial distributions
  29.   require prior written consent.
  30.  
  31.   This article is distributed in the hope that it will be useful,
  32.   but WITHOUT ANY WARRANTY; without even the implied warranty of
  33.   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  34.  
  35. ----------------------------------------------------------------------
  36.   
  37. Subject: Table of Contents
  38. From: Bill Wohler <wohler@newt.com>
  39.  
  40. Legend: + new, - deleted, ! changed
  41. _______________
  42.  
  43. 1. Introduction
  44.  
  45.  1.1  Why should I use MH?
  46.  1.2  What is the current version/status of MH?
  47.  1.3  ! Where can I get MH?
  48.  1.4  What references exist for MH?
  49.  1.5  What other MH software is available?
  50.  1.6  How can I print a MH manual?
  51.  1.7  How should I report bugs?
  52.  1.8  How can I convert from my mailer to MH?
  53. ______________
  54.  
  55. 2. Building MH
  56.  
  57.  2.1  What machines does MH run on?
  58.  2.2  How do I build MH?
  59.  2.3  What options should I use?
  60.  2.4  Where can I get POP3?
  61.  2.5  Does MH support IMAP?
  62.  2.6  Why does "mailgroup mail" only affect inc and not slocal?
  63.  2.7  ! How can I build MH on Solaris 2?
  64.  2.8  ! How can I build MH on Linux?
  65. _____________________
  66.  
  67. 3. Scanning & Reading
  68.  
  69.  3.1  What do I do if scan shows the wrong date?
  70.  3.2  How would one go about reading Usenet with MH?
  71.  3.3  How can I search through multiple folders?
  72.  3.4  Why don't MH format commands such as %(friendly) work?
  73.  3.5  Why doesn't "show" display all of a MIME message?
  74.  3.6  Can I get show not to run "less" so much on MIME messages?
  75.  3.7  + Why do I get "mhn: don't know how to display content"?
  76. _________
  77.  
  78. 4. Filing
  79.  
  80.  4.1  ! Can I append MH messages to a UNIX mailbox format file?
  81.  4.2  Can I append MH messages to a GNU Emacs rmail BABYL-format file?
  82.  4.3  Why do I get ".../.mh_sequences is poorly formatted?"
  83. _______________________
  84.  
  85. 5. Composing & Replying
  86.  
  87.  5.1  Why does repl add a "Re:" to a message that already has one?
  88.  5.2  How do I include messages in repl with or without ">"?
  89.  5.3  How can I eliminate duplicate copies of letters to myself?
  90.  5.4  How can I include my signature?
  91.  5.5  How do I call my editor with arguments?
  92.  5.6  How can I digestify messages in a folder for mail to another user?
  93.  5.7  How can I change my return address?
  94.  5.8  How can I change my From header?
  95.  5.9  How can I save a copy of all messages I send?
  96.  5.10 Can the folder in Fcc: be dynamically specified?
  97. __________
  98.  
  99. 6. Posting
  100.  
  101.  6.1  What to do with "Problems with edit - draft removed".
  102.  6.2  Can I run my message through a program (e.g., ispell) before sending?
  103.  6.3  What to do with "bad address 'xxx' - no at-sign after local-part".
  104.  6.4  Fixing "post: problem initializing server; [BHST] no servers available"
  105.  6.5  Fixing "post: problem initializing server; [RPLY] 503 Sender
  106.       already specified"
  107.  6.6  Fixing "post: unexpected response; [BHST] no socket opened"
  108.  6.7  How do I fix the "X-Authentication-Warning" header?
  109. _______________
  110.  
  111. 7. Mail Filters
  112.  
  113.  7.1  ! What mail filters are available?
  114.  7.2  Why slocal writes messages to system mailbox that from(1) can't read.
  115.  7.3  Where can I read about slocal and the format of .maildelivery?
  116.  7.4  How do I debug my .maildelivery file?
  117.  7.5  Why isn't slocal working?
  118. _______
  119.  
  120. 8. mh-e
  121.  
  122.  8.1  Is there documentation for mh-e?
  123.  8.2  How can mail aliases can be expanded in mh-e?
  124. ______
  125.  
  126. 9. Xmh
  127.  
  128.  9.1  How can I get xmh to use Emacs as the editor?
  129.  9.2  Does xmh support subfolders?
  130.  9.3  How do I precede included messages with ">" when replying in xmh?
  131.  
  132. Appendix
  133.  
  134.  Glossary & Acknowledgments
  135.  Switching xmh's editor
  136.  babyl2mh.pl
  137.  inco
  138.  srvrsmtp.c patch
  139.  mhn.c patch
  140.  + mhn.c patch 2
  141.  
  142. ------------------------------
  143.   
  144. Subject: Preface Viewing This Article
  145. From: Bill Wohler <wohler@newt.com>
  146.  
  147.   To skip to a particular question numbered xx, use "/^F.*xx" with most
  148.   pagers.  In GNU Emacs type "M-C-s ^F.*xx", (or C-r to search backwards),
  149.   followed by ESC to end the search.
  150.  
  151.   To skip to new or changed questions, use "/^S.*[!+]" with most pagers and
  152.   "M-C-s ^S.*[!+]" in GNU Emacs.
  153.  
  154.   This article is in digest format.  Nn may have already broken this
  155.   message into separate articles; if not, then type "G %".  In rn, use
  156.   ^G to skip sections.
  157.  
  158.   This article is treated as an outline when edited by GNU Emacs.  Run
  159.   "M-x describe-mode" to see available outline-mode commands.  Useful
  160.   commands are "M-x hide-body", "C-c C-s" (show-subtree) and "M-x
  161.   show-all"
  162.  
  163.   Numbers in square brackets denote the month and year of the last
  164.   update.
  165.  
  166.   If you should need the Internet address, use nslookup or dig if you
  167.   have them, or send mail to dns@grasp.insa-lyon.fr with "help" for
  168.   a Subject.
  169.  
  170. ------------------------------
  171.  
  172. Subject: 1. ***** Introduction *****
  173. From: Bill Wohler <wohler@newt.com>
  174.  
  175. ------------------------------
  176.  
  177. Subject: 1.1 Why should I use MH?
  178. From: Jerry Peek <jerry@ora.com>
  179.  
  180.   The MH message handling system is a set of electronic mail programs
  181.   in the public domain.  If your computer runs UNIX, it can probably
  182.   run MH.
  183.  
  184.   The big difference between MH and most other "mail user agents" is
  185.   that you can use MH from a UNIX shell prompt.  In MH, each command
  186.   is a separate program, and the shell is used as an interpreter.  So,
  187.   all the power of UNIX shells (pipes, redirection, history, aliases,
  188.   and so on) works with MH--you don't have to learn a new interface.
  189.   Other mail agents have their own command interpreter for their
  190.   individual mail commands (although the mush mail agent simulates a
  191.   UNIX shell).
  192.  
  193.   Because MH commands aren't part of a monolithic mail system, you can
  194.   use them at any time; you don't have to start or quit the mail
  195.   agent.  Because you use them from a shell prompt, you can use all
  196.   the power of the shell.
  197.  
  198.   If your shell has time-saving aliases or functions (and most do),
  199.   you'll be able to use them with MH, of course.  And because MH isn't
  200.   a monolithic mail agent, you can use MH commands in UNIX shell
  201.   scripts, or call them from programs in high-level languages like C.
  202.  
  203.   Unlike most mail agents, MH keeps each message in a separate file.
  204.   The filename is the message number.  To rearrange the messages, MH
  205.   just changes the filenames.  MH can use standard UNIX file system
  206.   operations such as removing, copying and linking messages.  The
  207.   message files are grouped into one or more folders, which are
  208.   actually UNIX directories.
  209.  
  210.   MH is free, powerful, flexible--and the basics are easy to learn.
  211.  
  212. ------------------------------
  213.   
  214. Subject: 1.2 What is the current version/status of MH.
  215. From: Bill Wohler <wohler@newt.com>
  216.  
  217.   The current version of MH is 6.8.3.
  218.  
  219.   This version includes MIME, a multi-media MH package that implements
  220.   the new IETF work on Multi-media 822 (MIME).  This allows you to
  221.   include things like audio, graphics, and the like, in your mail
  222.   messages.  --Marshall Rose <mrose@dbc.mtview.ca.us>
  223.  
  224.   MH now works with Kerberos as well.
  225.  
  226.   In addition, a new program called mhparam extracts arguments from
  227.   .mh_profile which is useful in shell scripts.
  228.  
  229.   Please see the file CHANGES in the distribution for more details. [5.94]
  230.  
  231. ------------------------------
  232.   
  233. Subject: 1.3 ! Where can I get MH?
  234. From: Bill Wohler <wohler@newt.com>
  235.  
  236.   MH comes standard with:
  237.   
  238.     Berkeley Software Design BSD/386  . . . . MH 6.8.3
  239.     Control Data Corp. CDC4680-MP . . . . . . EMH 1.4.2 (modified MH)
  240.     DEC Ultrix 3.1    . . . . . . . . . . . . . MH 6.5
  241.     DEC Ultrix 4.2A.4 . . . . . . . . . . . . MH 6.7.1
  242.     DEC OSF/1 . . . . . . . . . . . . . . . . MH 6.7
  243.     Evans and Sutherland ES/OS 2.3    . . . . . MH 6.6
  244.     IBM PS/2 AIX 1.3  . . . . . . . . . . . . MH 6.4
  245.     IBM RISC System/6000 AIX 3.x and 4.1  . . MH 6.6
  246.     Linux . . . . . . . . . . . . . . . . . . MH 6.8.3
  247.     MIPS RISC/OS 4.52 . . . . . . . . . . . . MH 6.6
  248.     Sony NEWS-OS 4.3  . . . . . . . . . . . . MH 6.7.2
  249.     Tektronix UTek    . . . . . . . . . . . . . MH (Version Unknown)
  250.     Table maintained by: "James R. Hamilton"<jrh@jrh.guild.org>
  251.   
  252.   If you should need the Internet address, use nslookup or dig if you
  253.   have them, or send mail to dns@grasp.insa-lyon.fr with "help" for
  254.   a Subject.
  255.  
  256.   via anonymous ftp:                        [5.94]
  257.     ftp://ftp.ics.uci.edu/mh/mh-6.8.tar.Z                2MB
  258.     ftp://ftp.uu.net/networking/mail/mh/mh-6.8.tar.Z
  259.     ftp://krynn.efd.lth.se/pub/mail/mh-6.8.tar.Z
  260.  
  261.   via mail:
  262.     Send a note to either mail-server@nluug.nl or
  263.     archive-server@germany.eu.net with a body containing the following:
  264.  
  265.       send mail/mh/mh-6.8.tar.Z
  266.  
  267.     UK users may be able to use ftpmail@doc.ic.ac.uk.  Send a note
  268.     whose body contains "help" to this address. [12.92]
  269.  
  270.     Send a note to ftpmail@decwrl.dec.com whose body contains "help"
  271.     on a line by itself get information on getting ftp sources by
  272.     mail.  Also include the lines "connect" and "dir /pub/mail/ua/mh"
  273.     to see which files are available local to decwrl.  Please do this
  274.     as a last resort only.  [1.93]
  275.  
  276.   via U.S. mail:
  277.     You can send $75 US to the address below.  This covers
  278.     the cost of a 6250 BPI 9-track magtape, handling, and ship-
  279.     ping.  In addition, you'll get a laser-printed hard-copy of
  280.     the entire MH documentation set.  Be sure to include your
  281.     USPS address with your check.  Checks must be drawn on U.S.
  282.     funds and should be made payable to:
  283.  
  284.        Regents of the University of California
  285.  
  286.     The distribution address is:
  287.  
  288.        University of California at Irvine
  289.        Office of Academic Computing
  290.        Engineering Gateway E2130
  291.        Irvine, CA  92717  USA
  292.  
  293.        +1 714 824 5153
  294.  
  295.     Sadly, if you just want the hard-copies of the documenta-
  296.     tion, you still have to pay the $75.  The tar image has the
  297.     documentation source (the manual is in roff format, but the
  298.     rest are in TeX format).  Postscript formatted versions of
  299.     the TeX papers are available, as are crude tty-conversions
  300.     of those papers.  [1.93]
  301.  
  302. ------------------------------
  303.   
  304. Subject: 1.4 ! What references exist for MH?
  305. From: Bill Wohler <wohler@newt.com>
  306.  
  307.   Books:
  308.     MH & xmh: E-mail for Users & Programmers.  Second edition. Jerry Peek.
  309.     ISBN 1-56592-027-9.  $29.95.  728 pages.
  310.     O'Reilly & Associates, Inc.
  311.     Book Orders:
  312.       US and Canada: 800-998-9938. Fax: 707-829-0104.
  313.  
  314.     References to "the MH book" in this document refer to the second
  315.     edition of this book (section numbers for the first edition appear
  316.     in parenthesis).
  317.  
  318.     To get a list of non-US distributors, send a note to
  319.     nuts@ora.com or call +1-707-829-0515.
  320.  
  321.     Examples from this book are in:
  322.     ftp://ftp.uu.net/published/oreilly/nutshell/MHxmh/MHxmh2.tar.Z    54k
  323.  
  324.     There is another book that contains a number of examples of
  325.     advanced mail handing using MH as the example message handler.
  326.     It's also quite a good reference on email in general.  [12.92]
  327.  
  328.     The Internet Message.  Marshall T. Rose
  329.     ISBN 0-13-092941-7.  396 pages.
  330.     P T R Prentice Hall
  331.  
  332.   Papers:
  333.     MHN Tutorial by Jerry Sweet
  334.     ftp://ftp.ics.uci.edu/contrib/multimedia/mhn-tutorial.ps.Z        141k
  335.     ftp://ftp.ics.uci.edu/contrib/multimedia/mhn-tutorial.tex.Z        48k
  336.  
  337.   Usenet:
  338.     comp.mail.mh (gatewayed to MH-users)
  339.  
  340.   Mailing lists:
  341.      General questions/discussion: MH-users@ics.uci.edu
  342.      (gatewayed to comp.mail.mh).
  343.      MH developers and maintainers: MH-workers@ics.uci.edu.
  344.      Please use MH-users-request and MH-workers-request to request
  345.      an addition or deletion.
  346.  
  347.   MH-users archives:
  348.     ftp://ftp.ics.uci.edu/mh-users/
  349.  
  350.     The files are in packf(1) format, compressed with compress(1).  To
  351.     get them, use anonymous ftp and set "binary" transfer mode.
  352.  
  353.       mh-users.86.Z       8549        mh-users.86.scan.Z      771
  354.       mh-users.87.Z      55449        mh-users.87.scan.Z     3679
  355.       mh-users.88.Z     182805        mh-users.88.scan.Z    11339
  356.       mh-users.89.Z      89151        mh-users.89.scan.Z     5522
  357.       mh-users.90.Z     402470        mh-users.90.scan.Z    21551
  358.       mh-users.91.Z     878763        mh-users.91.scan.Z    36992
  359.       mh-users.92.Z    1281585        mh-users.92.scan.Z    44975
  360.       mh-users.93.Z    1544159        mh-users.93.scan.Z    53938
  361.       mh-users.mbox: current archive, uncompressed.
  362.  
  363.     There are directions in the README file.  Basically, you can use
  364.     either "msh" or the individual commands "inc -file" to get the
  365.     messages into a folder, and then "scan", "pick", "show", and so on
  366.     (or your favorite commands in xmh, mh-e, etc.).  --Jerry Peek
  367.     <jerry@ora.com>
  368.  
  369.   This document:
  370.     via WWW:
  371.       http://www.cis.ohio-state.edu/hypertext/faq/usenet/mail/mh-faq/part1/top.html [12.94]
  372.  
  373.     via anonymous ftp:
  374.       ftp://rtfm.mit.edu/pub/usenet/news.answers/mail/mh-faq/part1    [12.94]
  375.       ftp://ftp.uu.net/archive/usenet/news.answers/mail/mh-faq/part1.Z    [12.94]
  376.       ftp://ftp.cs.ruu.nl/pub/NEWS.ANSWERS/mail/mh-faq/part1        [12.94]
  377.  
  378.     via mail:
  379.       Each of the following addresses is following by commands which
  380.       should be included as the body of the message.
  381.  
  382.       mail-server@rtfm.mit.edu                        [12.94]
  383.         send /usenet/news.answers/mail/mh-faq/part1
  384.  
  385.       mail-server@cs.ruu.nl                        [12.94]
  386.     send /pub/NEWS.ANSWERS/mail/mh-faq/part1
  387.  
  388.   mh-e documentation:
  389.     Online info documentation for mh-e, a GNU Emacs interface to MH,
  390.     will be soon released with mh-e and will eventually find its way
  391.     into the Emacs distribution.  This is just a place holder to
  392.     remind me to reference this document.  However, if you would
  393.     like to be a technical reader for it, please drop me a line at
  394.     <wohler@newt.com>. XXX [12.94]
  395.  
  396.   exmh FAQ:
  397.     ftp://parcftp.xerox.com/pub/exmh/exmh.README            [12.94]
  398.  
  399.   Signature and Finger FAQ:
  400.     via WWW:
  401.       http://www.cis.ohio-state.edu/hypertext/faq/usenet/signature_finger_faq/faq.html
  402.  
  403.     via anonymous ftp:
  404.       ftp://rtfm.mit.edu/pub/usenet/news.answers/signature_finger_faq
  405.  
  406.     via mail (see above for usage):
  407.       mail-server@rtfm.mit.edu
  408.         send /usenet/news.answers/signature_finger_faq
  409.  
  410. ------------------------------
  411.   
  412. Subject: 1.5 What other MH software is available?
  413. From: Bill Wohler <wohler@newt.com>
  414.  
  415.   vmh
  416.     Vmh is designed for people using the bulletin-board features
  417.     of MH, where mail is stored in packed (single-file) folders.  As
  418.     a result, use of this program cannot be mixed with the use of
  419.     normal MH commands.  Vmh is a part of the official MH
  420.     distribution. --James Perkins <jamesp@sp-eug.com> [1.93]
  421.  
  422.   xmh
  423.     Xmh is a X11 mouse-based MH browsing tool.  It is very powerful
  424.     and feature-filled and thus comes with a moderate learning
  425.     curve.  Its dependence on the X11 environment makes it very
  426.     reconfigurable, but only by people well-versed in X applications
  427.     programming.  Its message reply built-in-editor interface is not
  428.     always popular among those used to having MH bring up the editor
  429.     of their choice.  --James Perkins <jamesp@sp-eug.com>
  430.  
  431.     xmh is part of the standard X Window System distribution from
  432.     the X Consortium.  Ultrix also ships dxmail which is similar.
  433.  
  434.     ftp://cs.utk.edu/pub/xmh.shar.Z                    162k
  435.  
  436.     Here's a version of xmh that includes MIME.  --Harald Tveit
  437.     Alvestrand <hta@boheme.er.sintef.no> [1.93]
  438.  
  439.     ftp://aun.uninett.no/pub/mail/mixmh/mixmh-0.3.tar.Z            232k
  440.  
  441.   exmh
  442.     EXMH is a user interface for the MH mail system written in TCL/TK.
  443.  
  444.     Exmh has MIME support, color feedback in the scan listing, a
  445.     folder display with one label per folder, clever scan caching,
  446.     facesaver bitmap display; background inc, various inc styles,
  447.     searching over folder listing and message body, a dialog-box
  448.     interface to MH pick, a simple built-in emacs-like editor,
  449.     interfaces to other editors, user preferences, user hacking
  450.     support. --Brent Welch <welch@parc.xerox.com> [8.94]
  451.  
  452.     ftp://parcftp.xerox.com/pub/exmh/exmh-1.4.1.tar.Z            357k
  453.     ftp://parcftp.xerox.com/pub/exmh/exmh-1.5omega.tar.Z
  454.  
  455.   mh-e
  456.     Mh-e is the GNU Emacs front end for MH.  It offers all the
  457.     functionality of MH, the visual orientation and simplicity of
  458.     use of xmh, and full integration with Emacs, including thorough
  459.     configurability.  The command set is similar to that of rmail
  460.     (the Emacs front end for BSD mail) and BSD mail itself.  On-line
  461.     help is available.
  462.  
  463.     Mh-e allows one to read and process mail very quickly: commands
  464.     are single characters and completion and defaults are available
  465.     for file and folder names.  During a reply, the original message
  466.     is displayed simultaneously in another window for easy reference
  467.     where a mh-e command can quickly incorporate and format this
  468.     text into your reply.
  469.  
  470.     With mh-e you compose outgoing messages in Emacs.  This is a big
  471.     plus for Emacs users, but it has been known for non-Emacs users
  472.     to be able use mh-e after only learning the most basic cursor
  473.     motion commands.  Mh-e is easily configured via the Emacs
  474.     edit-options menu, and people familiar with Emacs Lisp will be
  475.     able to further reconfigure mh-e beyond recognition.
  476.  
  477.     Mh-e is part of the standard GNU Emacs distribution.  Note that
  478.     mh-e got much faster in Emacs 18.56.  --Stephen Gildea
  479.     <gildea@x.org> [5.94]
  480.  
  481.     ftp://ftp.x.org/misc/mh-e/mh-e-4.1.tar.Z                66k
  482.  
  483.   metamail
  484.     Metamail is a package that can be used to convert virtually ANY
  485.     mail-reading program on UNIX into a multi-media mail-reading program.
  486.     It is an extremely generic implementation of MIME (Multipurpose
  487.     Internet Mail Extensions), the proposed standard for multi-media mail
  488.     formats on the Internet.  The implementation is extremely flexible and
  489.     extensible, using a "mailcap" file mechanism for adding support for new
  490.     data formats when sent through the mail.  At a heterogeneous site where
  491.     many mail readers are in use, the mailcap mechanism can be used to
  492.     extend them all to support new types of multi-media mail by a single
  493.     addition to a mailcap file.
  494.  
  495.     The metamail distribution comes complete with a small patch for
  496.     each of over a dozen popular mail reading programs, including
  497.     Berkeley mail, mh, Elm, Xmh, Xmail, Mailtool, Emacs Rmail, Emacs
  498.     VM, Andrew, and others.  Note that the MH patches are now integrated
  499.     into MH 6.8 --Nathaniel Borenstein <nsb@thumper.bellcore.com>
  500.  
  501.     ftp://thumper.bellcore.com/pub/nsb/mm2.7.tar.Z
  502.  
  503.   plum
  504.     Plum is a highly configurable and extensible screen-oriented front-end
  505.     for processing MH mail on ASCII terminals.  Unlike mh-e, the extension
  506.     language used in plum is perl, not LISP.  Plum offers many of the
  507.     advantages of xmh, but lacks several of xmh's disadvantages.  The
  508.     look&feel derives more from vi than from emacs.  Key bindings and
  509.     functions may be changed on the fly to suit the user's preference.  It
  510.     offers filename and word completion on folder, variables, and command
  511.     names.
  512.  
  513.     Until it is included in the standard distribution (under miscellany),
  514.     you can find a copy on:
  515.  
  516.     ftp://perl.com/pub/perl/scripts/plum.gz                29k
  517.     or mail requests to Tom Christiansen <tchrist@perl.com>. [11.94]
  518.  
  519.   mhunify
  520.     Mhunify is a set of perl scripts and templates that provides
  521.     shell-level MH functionality with USENET news.  Since MH supports
  522.     MIME, MIME-format news articles just work.  I've found that being
  523.     able to handle news in the same way that I handle email is very
  524.     useful, although there are some tradeoffs.
  525.  
  526.     Mhunify also treats MH folders just like news groups.  If you
  527.     subscribe to several mailing lists, and your email is
  528.     automatically delivered to separate folders, say, via procmail or
  529.     via MMDF's .maildelivery, the mhunify package lets you progress
  530.     automatically through your folders just as you would news groups.
  531.     --Jerry Sweet <jsweet@irvine.com> [11.94]
  532.  
  533.     ftp://ftp.ics.uci.edu/mh/contrib/multimedia/mhunify.shar.gz
  534.   
  535.   olmh
  536.     Sun's Open Windows 3 comes with a demo for OLIT (Open Look
  537.     Interface Toolkit, the Open Look wrapper to Xt) named olmh that
  538.     does handle 3rd and subsequent levels of nesting of folders.
  539.     --Dale Carstensen <dlc@c3file.c3.lanl.gov>
  540.  
  541.     Obtain the Open Windows 3 distribution CD/ROM from Sun (SPARC
  542.     only).  To do this, call 1-800-USA-4SUN and send tone "2" for
  543.     telemarketing after it answers.  The 4.1.2 CD/ROM may also have
  544.     Open Windows 3.  The list price for the 4.1.2 CD/ROM is $200.
  545.  
  546.   vmail
  547.     Vmail is a curses-based, vi-like message browser which calls on
  548.     MH programs to manipulate mail.  It can be used on almost any
  549.     terminal.  It organizes mail folders into index pages, from
  550.     which a message can be selected to be shown, replied-to,
  551.     forwarded, refiled, deleted, and so on.  The vi-like interface
  552.     and command keystrokes are comfortable to less-experienced UNIX
  553.     users, and it is a small, compact program, unlike the mh-e Emacs
  554.     package.
  555.  
  556.     This version of vmail has been bugfixed and enhanced from the
  557.     original vmail published on the net in 1987 by J. Zobel.
  558.     --James Perkins <jamesp@sp-eug.com> [1.93]
  559.  
  560.     ftp://ftp.uu.net/comp.sources.unix/volume12/vmail/part0*.Z        46k
  561.     ftp://ftp.ucs.ubc.ca/pub/mh/vmail.[1-3]of3.Z            58k
  562.     Or mail requests to James Perkins <jamesp@sp-eug.com>.  [5.94]
  563.  
  564.   vmailtool
  565.     If you have a Sun workstation, vmailtool may be for you.  It is a
  566.     button gadget panel for the above-mentioned vmail program.  It
  567.     brings vmail into the windows era where people no longer need to
  568.     memorize specific command keystrokes.  It also provides a mail
  569.     icon with the flag that pops up when new mail arrives.  Again,
  570.     this is a compact, simple tool, unlike the powerful xmh program.
  571.     Still, it's a welcome alternative for many people who are running
  572.     SunView or OpenWindows.  --James Perkins <jamesp@sp-eug.com> [1.93]
  573.  
  574.     ftp://ftp.ucs.ubc.ca/pub/mh/vmailtool.Z                18k
  575.     or mail requests to James Perkins <jamesp@sp-eug.com>. [5.94]
  576.  
  577.   mmh
  578.     MMH, My Mail Handler, is a Motif interface for reading and sending mail.
  579.     It uses the MH commands to actually handle sending a receiving messages.
  580.     It does not support all the capabilities of MH, but offers a large
  581.     enough subset to handle the majority of users.  Its intended user is
  582.     someone between "bumbling email novice" and "sophisticated user".
  583.     Hooks are provided to allow the user to customize and add new commands.
  584.  
  585.     ftp://ftp.eos.ncsu.edu/pub/bill/bill.tar.Z                120k
  586.  
  587.   X.500 lookups
  588.     If a name is enclosed in square brackets, when entering a destination
  589.     address:
  590.  
  591.     To: [Greg Wickham,CSIRO]
  592.  
  593.     a search will be made in the X.500 Directory for the individual's entry.
  594.     If an address exists then it will be extracted and placed into the
  595.     headers.  Mail requests for the software to the author.  --Andrew
  596.     Waugh <ajw@mel.dit.csiro.au>
  597.  
  598.   QueueMH
  599.     QuemeMH is an email based service request and tracking system
  600.     based on the Rand Mail Handler. --Barbara Dyker
  601.     <dyker@teal.csn.org>  [1.93]
  602.  
  603.     ftp://ftp.cs.colorado.edu/pub/cs/sysadmin/utilities/queuemh.tar.Z   98k
  604.  
  605.   QMH:
  606.  
  607.     Qmh is an MH-based group mail management tool. Written entirely in
  608.     perl, Qmh combines the best aspects of MH with group mail
  609.     heuristics and delivers a sensible package for all levels of UNIX
  610.     users. A limitless number of individual queues and associated
  611.     groups of permitted users can be established.
  612.  
  613.     Specific functionality includes the following modes of operation;
  614.     checking header dates and sending reminder/deadline mail, editing
  615.     existing messages, help screens, creating new messages from
  616.     scratch or exiting messages, resolving messages, scanning queue
  617.     folders, and annotating with status both by editing and sending
  618.     mail.
  619.  
  620.     Qmh is a single generic program in and of itself from which all
  621.     modes of operation are invoked. Additionally, each separate queue
  622.     may be accessed via a link to the single program. All system
  623.     configuration is maintained in a single file that is read upon
  624.     each invocation of Qmh.  Formatting and template files are
  625.     provided in the system library, although individual users can
  626.     override the defaults simply by creating equivalent files in their
  627.     own MH mail directory.
  628.  
  629.     Qmh provides a powerful database-like functionality by allowing
  630.     limitless per-queue X-Qmh-<$value> headers to be included in
  631.     messages.  These "fields" then form the context of the queue
  632.     messages and provide a user-defined, but yet structured
  633.     environment for queries, reporting, and random information.
  634.  
  635.     Qmh is designed to provide a complete solution for SA groups, help
  636.     desks, support organizations, or wherever two or more individuals
  637.     are trying to manage multiple mail requests.
  638.  
  639.     Qmh is also compatible with versions of xmh that provide
  640.     user-level command buttons. Provided in the Qmh package is a
  641.     ~/.Xdefaults template file that's setup to harness the power of
  642.     Qmh.
  643.  
  644.     For more info, write to <info@rootgroup.com>.  [3.93]
  645.  
  646.   MacMH and PC/MH:
  647.     These were available only for non-commercial degree-granting
  648.     institutions from:
  649.  
  650.     Networking & Communication Systems
  651.     115 Pine Hall
  652.     Stanford University
  653.     Stanford, CA 94305-4122
  654.     Phone: +1 415-723-3909
  655.  
  656.     See also:
  657.       ftp://netix.com/pub/pc-mh-info/*
  658.  
  659.     --Jerry Peek <jerry@ora.com>
  660.  
  661.     For more PC/MH info, contact:
  662.  
  663.     Netix Communications, Inc.
  664.        15375 Barranca Parkway
  665.        Building G, Suite 107
  666.        Irvine, CA 92718
  667.         Phone: +1 714-727-9532
  668.     FAX:   +1 714-727-3922
  669.     Internet: info@netix.com
  670.  
  671.     --Shannon Yeh <yeh@netix.com>
  672.  
  673.     In addition, you might try Wollongong, to see if they have something you
  674.     can get. [8.94]
  675.   
  676. ------------------------------
  677.   
  678. Subject: 1.6 How can I print a MH manual?
  679. From: Bill Wohler <wohler@newt.com>, Jos Vos <jos@bull.nl>
  680.  
  681.   To order a copy by mail, see the section on how to get MH by mail
  682.   (see "Where can I get MH?" and "What references exist for MH?").
  683.  
  684.   To print your own copy, first obtain the MH sources (see "Where can
  685.   I get MH?") if you don't already have it.  Go into the "doc"
  686.   directory and run "make guide" to create the administrators guide
  687.   and "make manual" to create a user's manual which includes tutorials
  688.   and man pages.  If the doc directory is empty or is missing the
  689.   Makefile, you'll have to run "mhconfig MH" in the conf directory so
  690.   that the documentation with correct local information is created.
  691.  
  692.   For properly formatting the documentation (at least the manual
  693.   pages) you might even have to install MH, because a reference to a
  694.   tmac.h file in the MH lib directory is made in the manual pages.
  695.  
  696.   You can also ftp the ASCII or postscript versions:
  697.  
  698.     ftp://ftp.ics.uci.edu/mh/doc/tutorial.ps.Z                65k
  699.     ftp://ftp.ics.uci.edu/mh/doc/ADMIN.ps.Z                56k
  700.     ftp://ftp.ics.uci.edu/mh/doc/MH.ps.Z (man pages)            261k
  701.     ftp://ftp.uu.net/networking/mail/mh/doc/tutorial.ps.Z
  702.     ftp://ftp.uu.net/networking/mail/mh/doc/ADMIN.ps.Z
  703.     ftp://ftp.uu.net/networking/mail/mh/doc/MH.ps.Z (man pages)
  704.  
  705.   Or, you can send a note to mail-server@nluug.nl with a body containing the
  706.   following:
  707.  
  708.     send /mail/mh/papers-ps/tutorial.ps.Z
  709.  
  710.   [1.93]
  711.  
  712. ------------------------------
  713.   
  714. Subject: 1.7 How should I report bugs?
  715. From: Bill Wohler <wohler@newt.com>
  716.  
  717.   Mail them to Bug-MH@ics.uci.edu and be sure to include the output of
  718.   the -help option as well as what hardware and operating system you
  719.   are using.
  720.  
  721. ------------------------------
  722.   
  723. Subject: 1.8 How can I convert from my mailer to MH?
  724. From: Jerry Peek <jerry@ora.com>
  725.  
  726.   If you use one of a mail agent like 'mail', 'mailx', 'elm' or
  727.   'mush', converting to MH is easy.  When you run the 'inc' command,
  728.   it reads all new messages from the system mailbox into your 'inbox'
  729.   folder.  Those mail agents also have separate files or "folders"
  730.   that hold messages in the same format as the system mailbox.  You
  731.   can read them with the 'inc -file' command.  For example, to read
  732.   the messages from your 'mbox' mail file into your MH 'inbox' folder,
  733.   you'd type:
  734.  
  735.     % cd
  736.     % cp mbox mbox.backup
  737.     % inc -file mbox
  738.  
  739.   If you see the usual "Incorporating new mail into inbox..." message
  740.   and a scan listing, the messages probably were converted.  Read some
  741.   or all of them (with the 'show' command) and be sure.  The 'inc'
  742.   won't remove your mbox unless you use '-truncate'.
  743.  
  744.   Section D.4 (C.4) of the MH book lists two scripts to convert mail
  745.   files to MH folders: babyl2mh to convert from rmail's BABYL format;
  746.   vmsmail2mh to convert from VMS's mail (see "What references exist
  747.   for MH") to see where the book's examples can be ftped from).
  748.  
  749.   Vivek Khera <khera@cs.duke.edu> rewrote this in Perl since the
  750.   original script doesn't work for some people (see
  751.   "babyl2mh.pl" below). [1.93]
  752.  
  753.   Juergen Nickelsen <nickel@cs.tu-berlin.de> provides yet another
  754.   short script.  He says,
  755.  
  756.   "You can remove the second to last second line ("> $input"), so
  757.   that the script doesn't zero out your RMAIL file.
  758.  
  759.   "Another alternative is to replace this line with "inc -file $tmpmbox
  760.   $folder && > $input", so that the RMAIL is only zeroed if inc
  761.   successfully incorporated the mail.  Finally one could add a switch
  762.   -z, so that the RMAIL file is only zeroed if the switch is given.
  763.   See [Appendix "inco."] [1.93]
  764.  
  765.   Use the following to convert a BABYL format file to UNIX mail
  766.   format. [5.94]
  767.   ftp://inf.informatik.uni-stuttgart.de/pub/gnu/emacs_extras/rmailtovm.el.Z 6k
  768.  
  769.   See also MH book Appendix D (Appendix C).
  770.  
  771. ------------------------------
  772.  
  773. Subject: 2. ***** Building MH *****
  774. From: Bill Wohler <wohler@newt.com>
  775.  
  776. ------------------------------
  777.  
  778. Subject: 2.1 What machines does MH run on?
  779. From: Jerry Peek <jerry@ora.com>
  780.  
  781.   If you have a computer running UNIX, you can probably run MH.
  782.  
  783. ------------------------------
  784.   
  785. Subject: 2.2 How do I build MH?
  786. From: Bill Wohler <wohler@newt.com>
  787.  
  788.   By carefully reading the READ-ME in the root of the source
  789.   hierarchy, one should not have any trouble building MH.
  790.  
  791. ------------------------------
  792.   
  793. Subject: 2.3 What options should I use?
  794. From: Bill Wohler <wohler@newt.com>
  795.  
  796.   BERK: Do NOT include the BERK option (in versions 6.7 or later)!
  797.   BERK breaks the mh-format functions that take apart address lines,
  798.   for example mbox, from, and friendly.  This would really put a crimp
  799.   on my replcomps file.
  800.  
  801.   LOCKF: if you have NFS, you need to lock your mailbox with lockf()
  802.   so the lock will be honored by all machines on the local network.
  803.   If you have the lockf() system call, include LOCKF.
  804.  
  805.   JQ Johnson <jqj@duff.uoregon.edu> makes the point that one should
  806.   use this option carefully since it requires a robust lockf() call.
  807.   For example, this option caused serious problems on his SunOS 4.1.1.
  808.   He suggested using LOK_BELL instead, and adding "lockstyle: 1" to
  809.   mtstailor.
  810.  
  811.   ATZ: makes your timezones print like "EST" instead of "-0500".  Much
  812.   prettier.  --Stephen Gildea <gildea@x.org>
  813.  
  814.   However, Tony Landells <ahl@technix.oz.au> replies: "Yes; very
  815.   pretty.  How unfortunate that timezone names are so ambiguous, so
  816.   that EST can be interpreted, at a minimum, as (American) Eastern
  817.   Standard Time, (Australian) Eastern Standard Time, or (Australian)
  818.   Eastern Summer Time (and yes, I think it's dumb having the same
  819.   acronym for both normal and Summer time, but that's a different
  820.   problem).  While the numeric timezones may not look as nice, they
  821.   are, at least, reasonably unambiguous.  I would urge anyone who ever
  822.   intends/hopes/expects to use email outside the U.S. to NOT use ATZ
  823.   (sorry Stephen)."
  824.  
  825.   At any rate, the conf/examples directory has been updated and
  826.   contains many examples show you which options are required on your
  827.   platform and which are optional (in the upcoming version MH 6.8).  At
  828.   any rate, it is recommended that you examine the options in the
  829.   example configuration files, and read about them in READ-ME.
  830.  
  831.   RPATHS: a side-effect is that slocal writes messages to your system
  832.   maildrop without the MMDF C-A's that separate messages, so your BSD
  833.   tools like from work. [12.92]
  834.  
  835. ------------------------------
  836.   
  837. Subject: 2.4 Where can I get POP3?
  838. From: Bill Wohler <wohler@newt.com>
  839.  
  840.   MH6.7 (and earlier versions too) include a server for version 3 of POP.
  841.  
  842. ------------------------------
  843.   
  844. Subject: 2.5 Does MH support IMAP?
  845. From: John Romine <jromine@ics.uci.edu>
  846.  
  847.   No.  MH only supports retrieving mail using POP3.  POP3 is on the
  848.   "standards track"--it is now an elective Internet Draft Standard
  849.   (see RFC1280 for more details).  At this point, IMAP[23] are
  850.   "experimental, limited use" protocols; it is unlikely that MH will
  851.   support them.  
  852.  
  853. From: Bill Wohler <wohler@newt.com>
  854.  
  855.   However, I've found several things which might help.  First, a
  856.   definition lifted from the Pine FAQ:
  857.  
  858.   What is IMAP?
  859.  
  860.   IMAP stands for "Internet Message Access Protocol".  An IMAP client
  861.   program on any platform at any location on the Internet can access
  862.   email folders on an IMAP server.  While the messages appear to be
  863.   local, they reside on the server until the client explicitly moves
  864.   or deletes them.  The IMAP protocol is a superset of POP, containing
  865.   all POP commands plus more.  For a comparison of IMAP and POP, see
  866.   the paper Comparing Two Approaches to Remote Mailbox Access: IMAP
  867.   vs. POP (in ftp.cac.washington.edu:/mail/imap.vs.pop).  IMAP is what
  868.   allows Pine (or any other IMAP client) to get to email on a central
  869.   campus email server.  There are current IETF working groups revising
  870.   IMAP and readying it to become an Internet standard. A copy of the
  871.   latest IMAP draft may be obtained from
  872.   ftp://ftp.cac.washington.edu/mail/latest-imap-draft.  For a list of IMAP
  873.   clients, see the file imap.software, in the same directory. [8.94]
  874.  
  875.   Here are a few other references:
  876.  
  877. From: David L Miller <dlm@cac.washington.edu>
  878.  
  879.   ipop3d from the UW IMAP toolkit can operate in a couple modes.  As a
  880.   straight POP3 server, it uses the same C-client library as imapd, so
  881.   it co-exists comfortably with imapd.  It can also operate as a
  882.   POP-to-IMAP gateway so that your POP-only clients can access IMAP
  883.   services. [8.94]
  884.  
  885.   ftp://ftp.cac.washington.edu/mail/imap.tar.Z                1.0M
  886.  
  887. From: Mark Crispin <MRC@Panda.COM>
  888.  
  889.   The only answer I can give for [how MH users can use IMAP] is that
  890.   Pine can read mailboxes in MH format; and that someone might in the
  891.   future develop a version of MH that can use IMAP. [8.94]
  892.  
  893. ------------------------------
  894.   
  895. Subject: 2.6 Why does "mailgroup mail" only affect inc but not slocal?
  896. From: John Romine <jromine@ics.uci.edu>
  897.  
  898.   If "mailgroup" is set, inc is made set-group-id to this group name.
  899.   Some SYS5 systems want this to be set to "mail".  Set this if
  900.   /usr/spool/mail (or /usr/mail) is not world-writable.  These
  901.   changes were contributed by Peter Marvit, and "inc" is very careful
  902.   about its use of the set-gid privilege.
  903.  
  904.   Note that slocal doesn't know how to deal with this, and will not
  905.   work under these systems; just making it set-group-id will open a
  906.   security hole (since it doesn't know when to drop the set-gid
  907.   privileges).  If you're using "mailgroup", you should remove slocal
  908.   (and its man page) from your system. [1.93]
  909.  
  910.   Alternatives to slocal include deliver, procmail, and mailagent.
  911.   Archie can help you find where they are kept.
  912.  
  913. ------------------------------
  914.   
  915. Subject: 2.7 ! How can I build MH on Solaris 2?
  916. From: Neil Rickert <rickert@cs.niu.edu>,
  917.     Scott K. Hutton <shutton@habanero.ucs.indiana.edu>,
  918.     Casper H.S. Dik <casper@fwi.uva.nl>
  919.  
  920.   First, don't use the BSD compatible stuff.  Make sure that the Sun
  921.   or GNU compiler appear before the BSD compiler in your PATH.
  922.  
  923.   Second, don't use GNU make.  Make sure that the Sun make appears
  924.   before the GNU make in your PATH.
  925.  
  926.   Use conf/examples/solaris2.sun.com and fix the paths, if necessary.
  927.   Optionally change the following to use the GNU compiler, to perform
  928.   optimization, and to create shared libraries.
  929.  
  930.     cc              gcc
  931.     ccoptions       -O -g -msupersparc
  932.     slflags         -shared
  933.  
  934.   Incorporate the diff in [Appendix "mhn.c"].
  935.  
  936.   When compiling, you can ignore the following warning:
  937.  
  938.     fmtcompile.c", line 238: warning: semantics of "/" change in ANSI C;
  939.     use explicit cast
  940.  
  941.   If you're using AFS, you'll have to replace any occurrence of "ln"
  942.   with "ln -s" wherever the make dies when it tries to make a link
  943.   "on a different file system."  [11.94]
  944.  
  945.   Unset LD_LIBRARY_PATH. [12.94]
  946.  
  947. ------------------------------
  948.   
  949. Subject: 2.8 ! How can I build MH on Linux?
  950. From: Brandon S. Allbery <bsa@kf8nh.wariat.org>
  951.  
  952.   The current patch is the first one listed below.  The old patch only
  953.   works with libc-4.4, which is no longer used.  The current patch is
  954.   split into two pieces, as with the previous patch, but now the
  955.   divisions are purely functional: the first diff enables MH to
  956.   compile, the second allows creation of a shared library.
  957.  
  958.   Recent versions of GNU make choke on MH's makefiles.  Unfortunately,
  959.   the shared library patches depend on "export".  If you have problems
  960.   building MH, remove the "export" lines from all of the makefiles (if
  961.   you applied the shared library patches) and try using BSD pmake
  962.   instead.
  963.  
  964.   ftp://sunsite.unc.edu/pub/Linux/system/Mail/mailhandlers/mh-6.8.3-bin.tar.gz
  965.   ftp://sunsite.unc.edu/pub/Linux/system/Mail/mailhandlers/mh-6.8.3-patch.tar.gz
  966.   ftp://sunsite.unc.edu/pub/Linux/system/Mail/mailhandlers/MH-6.8.3-diffs.libc-4.5-tar.gz
  967.   
  968.   The sizes are 650k, 22k and XXX respectively. [11.94]
  969.  
  970. ------------------------------
  971.  
  972. Subject: 3. ***** Scanning & Reading *****
  973. From: Bill Wohler <wohler@newt.com>
  974.  
  975. ------------------------------
  976.  
  977. Subject: 3.1 What do I do if scan shows the wrong date?
  978. From: Bill Wohler <wohler@newt.com>
  979.  
  980.   Upgrade to MH 6.8. [1.93]
  981.  
  982. ------------------------------
  983.   
  984. Subject: 3.2 How would one go about reading Usenet with MH?
  985. From: Jerry Peek <jerry@ora.com>
  986.  
  987.   You can save articles in the news readers for later perusal with MH.
  988.  
  989.   First, create a symbolic link from your mail directory (e.g., usenet) to
  990.   your news directory (e.g., "ln -s ~/News ~/Mail/usenet").  You can then
  991.   treat your news directory as a mail folder.  Thus, to select a news
  992.   group, use "folder +usenet/comp/mail/mh".
  993.  
  994.   To set the default save location correctly in rn, use:
  995.  
  996.     rn -M -/
  997.  
  998.   or in your nn presentation sequence:
  999.  
  1000.     news.announce.        +$F/$N
  1001.     comp.mail.mh        +
  1002.     .
  1003.     .
  1004.  
  1005.   If there's news spooled on your machine (that is, not via NNTP) then
  1006.   you can read a newsgroup with commands like:
  1007.   
  1008.       show first +/usr/spool/news/comp/mail/mh
  1009.       next
  1010.       ...
  1011.   
  1012.   You can also use sequences to keep track of what you've read.  MH
  1013.   will automatically set a "cur" sequence in each newsgroup you read
  1014.   that way.  So, to continue reading the newsgroup sometime later,
  1015.   after you've read some other folder, you can do:
  1016.   
  1017.       next +/usr/spool/news/comp/mail/mh
  1018.   
  1019.   and you'll read the next (new) article (if any) in that newsgroup.
  1020.  
  1021.   Note that this can eventually make your private context file pretty
  1022.   huge; if there's a group you don't read often, you can remove its
  1023.   context entries with a command like:
  1024.   
  1025.       rmf +/usr/spool/news/comp/mail/mh
  1026.   
  1027.   Don't try that on a folder full of mail (a folder that isn't
  1028.   read-only), though... in that case, it'll remove all the messages!
  1029.  
  1030.   I haven't looked into posting.  It seems like it shouldn't be hard.
  1031.   You could set up a "sendproc" that would look at outgoing email
  1032.   messages.  If the message had a Newsgroups: header field, your
  1033.   sendproc could call inews(1) instead of post(8).  I haven't seen
  1034.   much in the MH manpages or documentation about sendprocs (though I
  1035.   haven't looked for a couple of years...).  See the "mysend"
  1036.   script in the MH book section 13.13.
  1037.  
  1038.   A threaded news reader like trn or tin is so much nicer, though,
  1039.   that reading news with MH may not be worth the hassle.
  1040.  
  1041.   See also MH book section 8.7. [11.94]
  1042.  
  1043. From: Stephen Gildea <gildea@x.org>
  1044.  
  1045.   Although news readers are better, if one really wants to use
  1046.   MH, bbc will do the job.  For example, "bbc comp.mail.mh" reads this
  1047.   newsgroup.  To enable bbc, you have to specify "bboards" when you
  1048.   build MH.
  1049.  
  1050. From: Bill Wohler <wohler@newt.com>
  1051.  
  1052.   You can post via mail.  Send your article to
  1053.   news-group-name@cs.utexas.edu (e.g., comp-mail-mh@cs.utexas.edu).
  1054.   Note that the dots in the newsgroup name have been replaced by
  1055.   dashes.  Don't worry if the newsgroup name has a dash in it.  To
  1056.   cross-post, simply add the other newsgroups to the cc: field. 
  1057.  
  1058.   See mhunify in (see also "What other MH software is
  1059.   available?"). [11.94]
  1060.  
  1061. ------------------------------
  1062.   
  1063. Subject: 3.3 How can I search through multiple folders?
  1064. From: Jerry Peek <jerry@ora.com>
  1065.  
  1066.   Recurse through the folders (in csh and sh):
  1067.  
  1068.   % foreach f (`folders -f`)        $ for f in `folders -f`
  1069.   ? pick [switches] +$f            > pick [switches] +$f
  1070.   ? end                    > done
  1071.  
  1072.   Or create a folder that contains links to all messages (in csh and sh):
  1073.  
  1074.     % foreach f (`folders -f | grep -v -x ln`)
  1075.     ? refile -src +$f -link all +ln
  1076.     ? end
  1077.  
  1078.     $ for f in `folders -f | grep -v -x ln`
  1079.     > do refile -src +$f -link all +ln
  1080.     > done
  1081.  
  1082.   and in the future, refile messages with "refile +folder +ln".  To
  1083.   find something, use:
  1084.  
  1085.     % pick [switches] +ln
  1086.  
  1087.   See MH book sections 7.2.9, 7.8.3. [3.93]
  1088.  
  1089. ------------------------------
  1090.   
  1091. Subject: 3.4 Why don't MH format commands such as %(friendly) work?
  1092. From: Anthony Baxter <anthony@aaii.oz.au>
  1093.  
  1094.   The BERK option disables address parsing and therefore functions
  1095.   such as %(friendly).  Recompile MH without the BERK option. [5.94]
  1096.  
  1097. ------------------------------
  1098.   
  1099. Subject: 3.5 Why doesn't "show" display all of a MIME message?
  1100. From: Jerry Peek <jerry@ora.com>
  1101.  
  1102.   It's not the fault of the "show" command or of MH in general.  It's
  1103.   your system's configuration.  Check the mhn_defaults file in your MH
  1104.   library directory; if it doesn't have defaults for all content types,
  1105.   add them.  Or, if you can't (or shouldn't) change mhn_defaults, you
  1106.   can put default entries in your MH profile file for those content types.
  1107.  
  1108.   Here's the part of the mhn(1) manpage that explains how content types
  1109.   are handled:
  1110.  
  1111.     First, mhn will look for an entry of the form:
  1112.  
  1113.     mhn-show-<type>/<subtype>
  1114.  
  1115.     to determine the command to use to display the content.  If this
  1116.     isn't found, mhn will look for an entry of the form:
  1117.  
  1118.     mhn-show-<type>
  1119.  
  1120.     to determine the display command.  If this isn't found, mhn has
  1121.     two default values:
  1122.  
  1123.     mhn-show-text/plain: %pmoreproc '%F'
  1124.     mhn-show-message/rfc822: %pshow -file '%F'
  1125.  
  1126.     If neither apply, mhn will check to see if the message has a
  1127.     application/octet-stream content with parameter "type=tar".  If
  1128.     so, mhn will use an appropriate command.  If not, mhn will
  1129.     complain.
  1130.  
  1131.   So, add defaults that cover the types MH doesn't handle right now (or
  1132.   doesn't handle the way you want it to).  Your defaults will override
  1133.   corresponding defaults in the mhn_defaults file.  For example, if you
  1134.   don't have an HTML editor/browser on your system, you could tell MH to
  1135.   use the "less" paginator for HTML message parts:
  1136.   
  1137.     mhn-show-text/x-html: less %F
  1138.   
  1139.   You can put that line in your MH profile.
  1140.  
  1141.   You can even set different defaults for different terminal types (say,
  1142.   your VT100 at home and your X setup at work).  Make a file in the same
  1143.   format as mhn_defaults; store its pathname in the MHN environment
  1144.   variable.  Add a test to your shell setup file (.profile, .login) that
  1145.   tests the value of the TERM variable -- and, if you have an mhn setup
  1146.   file for that terminal type, store its pathname in the MHN variable.
  1147.   [8.94]
  1148.  
  1149. From: Michael K. Neylon <mneylon@engin.umich.edu>
  1150.  
  1151.   If you are not using the X Window System, you may have to add this
  1152.   line to your MH profile:
  1153.  
  1154.     mhn-charset-iso-8859-1: /bin/sh -c '%s'
  1155.   
  1156.   [11.94]
  1157.  
  1158. ------------------------------
  1159.   
  1160. Subject: 3.6 Can I get show not to run "less" so much on MIME messages?
  1161. From: Bill Wohler <wohler@newt.com>
  1162.  
  1163.   If you say, "show all," and one of the messages was a MIME message,
  1164.   your pager will be run several times on each message, rather than
  1165.   once on all the messages as a whole.  If you find this annoying, set
  1166.   the environment variable NOMHNPROC:
  1167.  
  1168.     % setenv NOMHNPROC ""            # csh
  1169.     $ NOMHNPROC=                # sh and bash
  1170.       $ export NOMHNPROC
  1171.  
  1172.   [11.94]
  1173.  
  1174.  
  1175. ------------------------------
  1176.   
  1177. Subject: 3.7 + Why do I get "mhn: don't know how to display content"?
  1178. From: Keith Moore <moore@cs.utk.edu>
  1179.  
  1180.   MH 6.8.3 has a bug where it will not handle multipart/foo correctly
  1181.   if it doesn't know about foo.  This patch (see "mhn.c patch 2"
  1182.   below) tells it to treat such things as if they were
  1183.   multipart/mixed.  [12.94]
  1184.  
  1185. ------------------------------
  1186.  
  1187. Subject: 4. ***** Filing *****
  1188. From: Bill Wohler <wohler@newt.com>
  1189.  
  1190. ------------------------------
  1191.  
  1192. Subject: 4.1 ! Can I append MH messages to a UNIX mailbox format file?
  1193. From: Bill Wohler <wohler@newt.com>
  1194.  
  1195.   Yes, see packmbox (usually in /usr/local/lib/mh or /usr/lib/mh).  [1.93]
  1196.  
  1197. ------------------------------
  1198.   
  1199. Subject: 4.2 Can I append MH messages to a GNU Emacs rmail BABYL-format file?
  1200. From: Bill Wohler <wohler@newt.com>
  1201.  
  1202.   To convert your MH folders to BABYL folders, first run the following script
  1203.   on your Mail directory.
  1204.  
  1205.   #!/bin/sh
  1206.  
  1207.   for f in Mail/*; do
  1208.     if [ -d $f ]; then
  1209.         touch msgbox
  1210.         folder=`basename $f`
  1211.         echo -n packing $folder ...
  1212.         packf +$folder
  1213.         echo done
  1214.         mv msgbox Mail-rmail/$folder
  1215.     fi
  1216.   done
  1217.  
  1218.   This assumes you don't have nested folders.  Your rmail folders will be
  1219.   left in $HOME/Mail-rmail in MMDF format which rmail can read.  Then run
  1220.   rmail-input for each folder, which converts each folder into BABYL format.
  1221.  
  1222.   Be sure not to append any messages before they are converted from MMDF
  1223.   to BABYL, since there may be really strange results.
  1224.  
  1225. ------------------------------
  1226.   
  1227. Subject: 4.3 Why do I get ".../.mh_sequences is poorly formatted?"
  1228. From: Jerry Peek <jerry@ora.com>
  1229.  
  1230.   There is a line length limit in this file.  When sequences are
  1231.   unbroken (without gaps in numbering), that makes short entries in
  1232.   the .mh_sequences file, like this:
  1233.  
  1234.     inftex: 72-8000
  1235.  
  1236.   But when there are lots of numbering gaps, the entry gets long:
  1237.  
  1238.     inftex: 76 79-81 87 95-96 105 109 120 124 135 141 158 163...
  1239.  
  1240.   That's when you run into problems, and why it's good to keep the
  1241.   folder packed when you can.  Simply run "folder -pack +folder".
  1242.  
  1243.   If you're refiling a lot of messages in a large folder, you might
  1244.   not be able to use sequences.  Use backquotes to give the message
  1245.   numbers directly to "refile".  For example:
  1246.  
  1247.     refile +tex/info-tex `pick -to info-tex`
  1248.  
  1249.   That can still generate a long list of arguments to the "refile" command,
  1250.   and some UNIXes can't handle that.  In that case, use xargs(1):
  1251.  
  1252.     pick -to info-tex | xargs refile +tex/info-tex
  1253.  
  1254.   If worse comes to worst, fire up a Bourne shell and use a "while" loop:
  1255.  
  1256.     pick -to info-tex | fmt | while read nums; do
  1257.         refile +tex/info-tex $nums
  1258.     done
  1259.  
  1260.   The fmt(1) command breaks long lines into manageable chunks of 72
  1261.   characters or so, splitting arguments at whitespace.  When you redirect
  1262.   the input of a while loop, a "read" command will read the incoming text
  1263.   and store it in a shell variable line by line.  This is a quick-&-dirty
  1264.   way to write xargs(1) if you don't have it. [8.94]
  1265.  
  1266. ------------------------------
  1267.  
  1268. Subject: 5. ***** Composing & Replying *****
  1269. From: Bill Wohler <wohler@newt.com>
  1270.  
  1271. ------------------------------
  1272.  
  1273. Subject: 5.1 Why does repl add a "Re:" to a message that already has one?
  1274. From: Larry McVoy <lm@slovax.Eng.Sun.COM>
  1275.  
  1276.   I carefully reconfigured and rebuilt MH from scratch and the problem
  1277.   went away.
  1278.  
  1279. ------------------------------
  1280.   
  1281. Subject: 5.2 How do I include messages in repl with or without ">"?
  1282. From: Alan Thew <qq11@liv.ac.uk>, Mike Schwager <schwager@cs.uiuc.edu>,
  1283.     James T Perkins <jamesp@sp-eug.com>
  1284.  
  1285.   When making a reply, specify a filter file on the command line:
  1286.  
  1287.     repl -filter repl.format
  1288.  
  1289.   This filter file must be in your MH mail directory (usually "Mail",
  1290.   in your home directory).  Here are a couple of example repl.format
  1291.   files:
  1292.  
  1293.     overflowtext="",overflowoffset=0
  1294.     message-id:nocomponent,formatfield=\
  1295.     "In message %{text}you write:"
  1296.     body:component=">",overflowtext=">",overflowoffset=0
  1297.  
  1298.           or
  1299.  
  1300.     overflowtext="",overflowoffset=0
  1301.     date:component="Your message dated",formatfield=\
  1302.     "%<(nodate{text})%{text}%|%(pretty{text})%>"
  1303.     body:component=">",overflowtext=">",overflowoffset=0
  1304.  
  1305.   Setting overflowoffset to 0 keeps MH from doing anything to
  1306.   extra-long lines in the headers.  In the body, however, this
  1307.   behavior is overridden so that long lines are automatically broken
  1308.   and a ">" is inserted before every line.  You could put almost
  1309.   whatever you want between those quotes, although the "standard" ">"
  1310.   makes it easier to read notes that have been included several times.
  1311.   The examples differ with the descriptive text that is inserted
  1312.   before the included body.
  1313.  
  1314.   It is suggested not to use the "prompter" editor in this case, since
  1315.   it is likely that you'll not want to use all of the included
  1316.   message.  Indeed, it is proper etiquette to edit out all unnecessary
  1317.   include verbiage so readers don't have to wade through the morass to
  1318.   read your pearls of wisdom.
  1319.  
  1320.   WARNING: the '>' appears on the first line ONLY in versions prior
  1321.   to 6.7.2.  Upgrade to MH 6.8.  [1.93]
  1322.  
  1323.   See also MH book sections 6.7.4, 6.7.5, 9.4.1 (9.3.1).
  1324.  
  1325. ------------------------------
  1326.   
  1327. Subject: 5.3 How can I eliminate duplicate copies of letters to myself?
  1328. From: Bill Wohler <wohler@newt.com>
  1329.  
  1330.   Add these two lines to your MH profile file:
  1331.  
  1332.     Alternate-Mailboxes: user@host1, user@host2, ...
  1333.         repl: -nocc me
  1334.  
  1335.   To get one copy, you can either:
  1336.  
  1337.   - Take out the "-nocc me"... then you'll get exactly one copy of
  1338.     your replies (assuming all your addresses are listed in
  1339.     Alternate-Mailboxes), or
  1340.  
  1341.   - (See also "How can I save a copy of all messages I send?").
  1342.  
  1343.     For more info, see the man pages comp(1),
  1344.     repl(1), forw(1), dist(1) and mh-mail(5). --Jerry Peek <jerry@ora.com>
  1345.  
  1346.   The Alternate-Mailboxes also tells scan which messages are really
  1347.   from you so that it can place the recipient in the scan line instead
  1348.   of the sender.  --Bill Wohler <wohler@newt.com>
  1349.  
  1350.   See also MH book sections 6.7.2, 8.6.
  1351.  
  1352.   This is also a convenient way to AVOID automatically cc-ing a
  1353.   mailing list when replying to a person who sent the message to the
  1354.   mailing-list, by listing the name of that mailing list in your
  1355.   alternate mailboxes.  --Alec Wolman <wolman@crl.dec.com>
  1356.  
  1357. ------------------------------
  1358.   
  1359. Subject: 5.4 How can I include my signature?
  1360. From: Bill Wohler <wohler@newt.com>
  1361.  
  1362.   There are several ways.
  1363.  
  1364.   1) The MH way.
  1365.  
  1366.   1a) In your Mail directory, create files that
  1367.       include your signature into the format of the message.
  1368.  
  1369.      ~/Mail/components:
  1370.     To:
  1371.     cc:
  1372.     Subject:
  1373.     --------
  1374.  
  1375.     --
  1376.     Eric Ziegast        ziegast@uunet.uu.net
  1377.     UUNET Technologies    uunet!ziegast
  1378.  
  1379.      ~/Mail/replfmt
  1380.     body:component="> ",compwidth=2
  1381.     :--
  1382.     :Eric Ziegast          ziegast@uunet.uu.net
  1383.     :UUNET Technologies    uunet!ziegast
  1384.  
  1385.      To use the replfmt file, add the following to your ~/.mh_profile:
  1386.  
  1387.     repl: -filter replfmt
  1388.  
  1389.      When comp is used, your signature is already there along with my
  1390.      headers.  When repl is used, the mhl program takes the body of
  1391.      the letter you're replying to, prepends '> ' to each line and
  1392.      then adds your signature at the end (available after version
  1393.      6.7). [11.94]
  1394.  
  1395.   1b) Create an "editor" which can be called from whatnow to add the
  1396.      signature when desired or create a frontend to post (use the
  1397.      .mh_profile line "postproc: postproc" to call it) that always
  1398.      appends the .signature file before calling post to mail the
  1399.      message.  David J. Fiander <david@golem.uucp>, David A.
  1400.      Truesdell <truesdel@nas.nasa.gov> and Tom Wilmore
  1401.      <sastjw@unx.sas.com> have sample scripts to do these.
  1402.  
  1403.   1c) Section 13.13 of the MH book lists mysend, a sendproc script to
  1404.     process a message after "What now? send" (see "What references
  1405.     exist for MH" to see where the book's examples can be ftped from).
  1406.     --Jerry Peek <jerry@ora.com> [9.92]
  1407.  
  1408.   2) Using your editor.  If you use vi, you can use something like:
  1409.  
  1410.       map S :r ~/.signature
  1411.  
  1412.      to load your signature out of .signature every time you
  1413.      hit 'S'.
  1414.  
  1415.   3) Use your windowing system.  xterm, for example, can provide key
  1416.      and button mappings for the utterly lazy.
  1417.  
  1418.   4) If you use Emacs with mh-e:
  1419.  
  1420.   4a) C-c C-s will append the signature.
  1421.  
  1422.   4b) Add the following to your .emacs file:
  1423.  
  1424.     (add-hook 'mh-compose-letter-function
  1425.         (function
  1426.          (lambda(a b c)
  1427.            (save-excursion
  1428.          (goto-char (point-max))
  1429.          (beginning-of-line)
  1430.          (insert-file (expand-file-name mh-signature-file-name))))))
  1431.  
  1432.       This hook is called after the draft buffer has been initialized,
  1433.       but before you have a chance to type anything.  --Andre
  1434.       Srinivasan <andre@neuronet.pitt.edu> [5.94]
  1435.  
  1436.   --Eric W. Ziegast <ziegast@uunet.uu.net> & Hardy Mayer
  1437.   <hardy@golem.ps.uci.edu> except where noted.
  1438.  
  1439.   Tired of the same old signature?  Want different signatures for
  1440.   different newsgroups?  Here's a program to help you out.
  1441.  
  1442.   The way it works is to have .signature be a named pipe, so if you
  1443.   don't have named pipes, just say 'n'.
  1444.  
  1445.   The sigrand program then feeds stuff down the pipe every time someone
  1446.   wants to read it.  That way it works for more than just news, but
  1447.   for anything that wants to read your .signature, like a mailer.
  1448.  
  1449.   You have your choice of three kinds of signatures:
  1450.  
  1451.       1) random (short) fortune from "fortune -s"; you get these if
  1452.      you don't have a global sig file.
  1453.       2) random fortune from ~/News/SIGNATURES [global sig file]
  1454.       3) random fortune form ~/News/(newsgroup)/SIGNATURES [local sig files]
  1455.  
  1456.   Ask Tom Christiansen <tchrist@perl.com> for more details. [11.94]
  1457.  
  1458.   See also the Signature FAQ (see "What references exist for MH?").
  1459.   [11.94]
  1460.  
  1461. ------------------------------
  1462.   
  1463. Subject: 5.5 How do I call my editor with arguments?
  1464. From: John Romine <jromine@ics.uci.edu>
  1465.  
  1466.   Set your editor (in .mh_profile) to the following shellscript:
  1467.  
  1468.     #/bin/sh
  1469.     <youreditor> <yourargs> $*
  1470.     exit 0
  1471.  
  1472. From: Ray Nickson <Ray.Nickson@comp.vuw.ac.nz>
  1473.  
  1474.   You might find it useful to make <youreditor> $EDITOR, or to use
  1475.   different arguments depending on your EDITOR environment variable.
  1476.   
  1477. ------------------------------
  1478.   
  1479. Subject: 5.6 How can I digestify messages in a folder for mail to another user?
  1480. From: Jerry Peek <jerry@ora.com>, Bill Wohler <wohler@newt.com>
  1481.  
  1482.   How about:
  1483.  
  1484.     forw [-digest tmp] [-form forwcomps] [-filter mhl.digest]
  1485.          messages +folder
  1486.  
  1487.   These messages can be un-digestified :-) by the MH burst(1) program.
  1488.  
  1489.   See also MH book sections 6.8, 7.9.
  1490.  
  1491. From: Glenn Vanderburg <glv@utdallas.edu>
  1492.  
  1493.   There's another way, which is better if the recipient understands MIME.
  1494.  
  1495.       forw -mime messages +folder
  1496.  
  1497.   (Make sure that you either have "automhnproc: mhn" in your mh
  1498.   profile, or type "edit mhn" to whatnow before you send it.)
  1499.  
  1500.   This bundles each message in a MIME message/rfc822 part, and then
  1501.   bundles the whole mess up in a multipart/digest part.  You can still
  1502.   add your own text at the beginning.  The MH burst program can also
  1503.   understand these messages and split them apart with no problem.
  1504.   This works beautifully with MIME-capable mail readers, especially
  1505.   exmh. [11.94]
  1506.  
  1507. ------------------------------
  1508.   
  1509. Subject: 5.7 How can I change my return address?
  1510. From: Bill Wohler <wohler@newt.com>
  1511.  
  1512.   If you find that your mailer creates a From header that others have
  1513.   trouble replying to, you can add a Reply-To header to override the
  1514.   From header in replies.
  1515.  
  1516.   Copy the components and replcomps files which are normally found in
  1517.   /usr/local/lib/mh into your Mail directory and add a line like the
  1518.   following after the Subject header replacing my address with your
  1519.   address:
  1520.  
  1521.     Reply-To: wohler@newt.com
  1522.  
  1523.   [12.92]
  1524.  
  1525. ------------------------------
  1526.   
  1527. Subject: 5.8 How can I change my From header?
  1528. From: Bill Wisner <wisner@netcom.com>
  1529.  
  1530.   If you're just interested in changing the hostname, add a line to
  1531.   $LIB/mtstailor:
  1532.  
  1533.     localname: desired_host_name
  1534.  
  1535.   [12.92]
  1536.  
  1537. From: Jerry Peek <jerry@ora.com>
  1538.  
  1539.   Just put a "From:" header in your "components", "replcomps" and
  1540.   "forwcomps" files.  MH will add a "Sender:" header with what it thinks
  1541.   is your real address, but (almost) no one cares about the "Sender:"
  1542.   header anyway.  [12.92]
  1543.  
  1544. ------------------------------
  1545.   
  1546. Subject: 5.9 How can I save a copy of all messages I send?
  1547. From: Bill Wohler <wohler@newt.com>, Jerry Peek <jerry@ora.com>
  1548.  
  1549.   Copy the components and replcomps files which are normally found in
  1550.   /usr/local/lib/mh into your Mail directory and add a line like the
  1551.   following after the cc header:
  1552.  
  1553.     Fcc: +out
  1554.  
  1555.   All outgoing messages will then be saved in the +out folder.  If you
  1556.   make a distcomps file, it needs "Resent-Fcc:". [8.94]
  1557.  
  1558. ------------------------------
  1559.   
  1560. Subject: 5.10 Can the folder in Fcc: be dynamically specified?
  1561. From: Andy Rabagliati <andyr@wizzy.com>
  1562.  
  1563.   My suggestion would be to run Tom Christiansen's rfi script.  If you
  1564.   cannot find it on *.sources archive sites (please try first), I can
  1565.   mail it to you.
  1566.  
  1567.   One good idea would be to write a whatnowproc that files the mail
  1568.   based on a procmail or deliver file.  Then you can use the same file
  1569.   for incoming and outgoing mail. [8.94]
  1570.     
  1571. ------------------------------
  1572.  
  1573. Subject: 6. ***** Posting *****
  1574. From: Bill Wohler <wohler@newt.com>
  1575.  
  1576. ------------------------------
  1577.  
  1578. Subject: 6.1 What to do with "Problems with edit - draft removed".
  1579. From: John Romine <jromine@ics.uci.edu>
  1580.  
  1581.   If your users are using an AT&T version of "vi", it's exiting with
  1582.   non-zero status (supposedly a count of the "errors" during the edit).
  1583.   Move "vi" to "broken_vi" and put it its place:
  1584.  
  1585.     #! /bin/sh
  1586.     /usr/ucb/broken_vi $*
  1587.     exit 0
  1588.  
  1589.   Alternatively, compile MH with the ATTVIBUG option.
  1590.  
  1591.   Then complain to your vendor that "vi" is broken, and they should
  1592.   fix it.
  1593.  
  1594. ------------------------------
  1595.   
  1596. Subject: 6.2 Can I run my message through a program (e.g., ispell) before sending?
  1597. From: Jerry Peek <jerry@ora.com>
  1598.  
  1599.   It's pretty simple.  If your speller is called myspell, use:
  1600.  
  1601.     What now? edit myspell
  1602.  
  1603.   MH will actually execute:
  1604.  
  1605.     myspell /your-mail-draft-directory/draftfile
  1606.  
  1607.   and give the entire draft message to your speller.  The header will
  1608.   probably be "misspelled," of course, though you might be able to
  1609.   tell the speller to ignore it--or you could hack up a little shell
  1610.   script to run the speller on just the message body, then tack the
  1611.   corrected body back onto the header before sending.
  1612.  
  1613.   You can automate this some more.  For example, if you want your
  1614.   speller to run after your first edit with "prompter" and also after
  1615.   you leave the "vi" editor, add these lines to your MH profile:
  1616.  
  1617.       prompter-next: myspell
  1618.       vi-next: myspell
  1619.  
  1620.   Then, at the "What now?" prompt:
  1621.  
  1622.       What now? e
  1623.  
  1624.   your speller will run.  For more info, see the mh-profile(5) man
  1625.   page or section 6.2.1 of the MH book.
  1626.  
  1627. ------------------------------
  1628.   
  1629. Subject: 6.3 What to do with "bad address 'xxx' - no at-sign after local-part".
  1630. From: Owen Rees <rtor@ansa.co.uk>
  1631.  
  1632.   You may find that post returns the following message:
  1633.  
  1634.     post: bad address 'Mr. Foo Bar <fb@somewhere.edu>' - no at-sign
  1635.     after local-part (Bar), continuing...
  1636.  
  1637.   The unquoted dot causes "Mr. Foo" to be parsed as the local part of
  1638.   the address.  Either remove the dot, or rewrite the address as
  1639.   follows:
  1640.  
  1641.     "Mr. Foo Bar" <fb@somewhere.edu>
  1642.     (Mr. Foo Bar) <fb@somewhere.edu>
  1643.     (Mr. Foo Bar) fb@somewhere.edu
  1644.  
  1645.   [1.93]
  1646.  
  1647. ------------------------------
  1648.   
  1649. Subject: 6.4 Fixing "post: problem initializing server; [BHST] no servers available"
  1650. From: Bill Wohler <wohler@newt.com>
  1651.  
  1652.   The error message itself is essentially correct.  However, what this
  1653.   really means is: MH's post cannot connect to a running sendmail over
  1654.   an SMTP port (MH configured with SMTP and SENDMTS).
  1655.  
  1656.   The potential problems:
  1657.  
  1658.   1. Your local sendmail daemon is dying or not running for some
  1659.   reason.
  1660.  
  1661.   2. You use BIND and your local nameserver is not responding.
  1662.  
  1663.   3. Your mtstailor has its "servers:" pointing to a non-existent
  1664.   machine or a machine which is a) not reachable or b) not running the
  1665.   sendmail daemon.  --Peter Marvit <marvit@hplabs.hpl.hp.com>
  1666.  
  1667.   4. The hostname localhost [127.0.0.1] is missing from /etc/hosts.  --Bdale
  1668.   Garbee <bdale@col.hp.com> [5.94]
  1669.  
  1670.   Solutions or Workarounds:
  1671.  
  1672.   2. Delete "/etc/resolv.conf." --Eric Bracken
  1673.   <bracken@bacon.performance.com> [11.94]
  1674.      
  1675.   4. Change the "servers" line of the to read
  1676.  
  1677.     servers: 127.0.0.1 \01localnet
  1678.  
  1679.   --Eric Bracken <bracken@bacon.performance.com> [11.94]
  1680.  
  1681. ------------------------------
  1682.   
  1683. Subject: 6.5 Fixing "post: problem initializing server; [RPLY] 503 Sender already specified"
  1684. From: Paul Pomes <paul@uxc.cso.uiuc.edu>
  1685.  
  1686.   The problem in sendmail is that the RSET after the ONEX does not
  1687.   reset all the state information.  Normally sendmail fork()s after
  1688.   the Mail from: statement and a RSET causes that child to exit.  This
  1689.   automatically cleans up.  If the fork() is suppressed by ONEX, then
  1690.   the source must be modified to do the cleanup.  See "srvrsmtp.c
  1691.   patch" in the Appendix.  If you don't have the sources, modify your
  1692.   MH sources to not use the ONEX verb. [3.93]
  1693.  
  1694. ------------------------------
  1695.   
  1696. Subject: 6.6 Fixing "post: unexpected response; [BHST] no socket opened"
  1697. From: Bill Wohler <wohler@newt.com>
  1698.  
  1699.   Problem happens when there is no interface defined within the tcp
  1700.   system.  A couple of workarounds include:
  1701.  
  1702.   o Use a hostname (other than the local host) instead of localhost in
  1703.     the "servers" entry of the "mtstailor" file (found in the MH
  1704.     library, usually /usr/local/lib/mh).
  1705.   o Recompile MH with sendmail instead of sendmail/mts (not very elegant).
  1706.  
  1707.   A better fix would be to define your tcp interface.
  1708.  
  1709.   Here, you run ifconfig and route (as root) to define the loopback
  1710.   device and route.  You should add them to rc.local so they are
  1711.   effected at every boot.
  1712.  
  1713.     # ifconfig lo 127.0.0.1            # Linux
  1714.     # ifconfig lo0 127.0.0.1        # Sun
  1715.  
  1716.     # route 127.0.0.1
  1717.  
  1718.   If all is well, "ifconfig lo" (or lo0), will show something like this
  1719.   (on my Linux system):
  1720.   
  1721.     lo        Link encap Local Loopback  
  1722.           inet addr 127.0.0.1  Bcast 127.255.255.255  Mask 255.0.0.0
  1723.           UP LOOPBACK RUNNING  MTU 2000  Metric 0
  1724.           RX packets 0 errors 0 dropped 0 overrun 0
  1725.           TX packets 519 errors 0 dropped 0 overrun 0
  1726.  
  1727.   and "netstat -r" will show:
  1728.  
  1729.     # netstat -r
  1730.     Destination net/address   Gateway address    Flags RefCnt    Use Iface
  1731.     127.0.0.0                 *                  UN         0    519 lo
  1732.  
  1733.   If you're not on a network and running DNS, your /etc/hosts will
  1734.   need at least:
  1735.  
  1736.     127.0.0.1    your_host_name localhost     # loopback address
  1737.  
  1738.   Note: put your name FIRST on the localhost line.  This official name
  1739.   is used by sendmail to determine your return address.  
  1740.  
  1741.   If you are on a network and running DNS, you might find that putting
  1742.   your host name in the localhost entry might gum up other things, in
  1743.   which case you'll want your hostname to have its own proper address.
  1744.   --Steve Lembark <lembark@wrkhors.la.ca.us> & Bill Wohler
  1745.   <wohler@newt.com> [8.94]
  1746.  
  1747.   This might not do it though.  David Youatt <dpy@sgi.com> says that
  1748.   his network was happy but he still had the problem until he upgraded
  1749.   his system and got the latest revision of sendmail as well.  He
  1750.   says: "Turns out that that the problem I was having seems to be
  1751.   caused (at least partly, maybe entirely) by the version of sendmail
  1752.   that is shipped with IRIX 5.2 (sendmail 5.65, I think).  The version
  1753.   shipped w/IRIX 5.3 (in beta) is sendmail 8.6.9 and works fine."
  1754.  
  1755.   I'm not entirely happy with this section, so please give me some
  1756.   feedback.  If you have this problem, please send me
  1757.   <wohler@newt.com> a brief description so I'll know which problems
  1758.   and solutions seem to be the most prevalent.
  1759.  
  1760. ------------------------------
  1761.   
  1762. Subject: 6.7 How do I fix the "X-Authentication-Warning" header?
  1763. From: Bill Wohler <wohler@newt.com>
  1764.  
  1765.   You get a header like:
  1766.   
  1767.     X-Authentication-Warning: screamer.rtp.ericsson.se: Host
  1768.     rcur7.rtp.ericsson.se didn't use HELO protocol
  1769.  
  1770.   Easy possibilities are:  apply the patch to MH that comes with Sendmail
  1771.   8.X.X and makes it use HELO, or comment out the line that says
  1772.  
  1773.     Opauthwarnings
  1774.  
  1775.   in your sendmail.cf.
  1776.  
  1777. ------------------------------
  1778.  
  1779. Subject: 7. ***** Mail Filters *****
  1780. From: Bill Wohler <wohler@newt.com>
  1781.  
  1782. ------------------------------
  1783.  
  1784. Subject: 7.1 ! What mail filters are available?
  1785. From: Bill Wohler <wohler@newt.com>
  1786.  
  1787.   The list currently includes slocal (included with MH), deliver,
  1788.   procmail and mailagent.  They are briefly described here.  Slocal is
  1789.   probably the most popular by virtue of being included in the
  1790.   distribution.  The next most popular entry is deliver, followed
  1791.   closely by procmail.
  1792.  
  1793.   Slocal comes with MH.  It can be used to process incoming mail based
  1794.   on the contents of any of the headers.  Actions include filing
  1795.   messages, running commands, printing messages on your terminal and
  1796.   so on.  The configuration is made in ~/.maildelivery.  People seem to
  1797.   have trouble with slocal bugs, and you can't use it if you don't
  1798.   have write permission on your system maildrop so a lot of people
  1799.   have opted for the alternatives, but it's easy to use and comes with
  1800.   MH. [8.94]
  1801.  
  1802.   Deliver can run any script or program (called ~/.deliver), so you
  1803.   really can do anything you want to incoming mail.  One feature that
  1804.   it sports that no other does is that you can install it as a local
  1805.   mailer in place of /bin/mail.  If it's the local mailer, you don't
  1806.   need to have a .forward--~/.deliver is run anyway.  In addition, it
  1807.   allows the system administrator to write some programs to filter
  1808.   everybody's mail.  It came with my Linux system, so installation was
  1809.   non-existent. [8.94]
  1810.  
  1811. From: Stephen R. van den Berg <berg@pool.informatik.rwth-aachen.de>
  1812.  
  1813.   Procmail can be used to create mail-servers, mailing lists, sort
  1814.   your incoming mail into separate folders/files (real convenient when
  1815.   subscribing to one or more mailing lists or for prioritizing your
  1816.   mail), preprocess your mail, start any programs upon mail arrival
  1817.   (e.g. to generate different chimes on your workstation for different
  1818.   types of mail) or selectively forward certain incoming mail
  1819.   automatically to someone. [8.94]
  1820.  
  1821.   ftp://ftp.informatik.rwth-aachen.de/pub/packages/procmail/procmail.tar.gz 160k
  1822.  
  1823. From: Raphael Manfredi <ram@acri.fr>
  1824.  
  1825.   "mailagent" is yet another mail filter, written in perl, which will
  1826.   let you do anything with your mail. It has all the features you may
  1827.   expect from a filter: mailing lists sorting, forwarding to MTA or to
  1828.   inews, pre-processing of message before saving into folder, vacation
  1829.   mode, etc.  It was initially written as an Elm-filter replacement,
  1830.   but has now enough power to also supplant MMDF's
  1831.   .maildelivery. There is also a support for @SH mail hooks, which
  1832.   allows you to automatically distribute patches or software via
  1833.   command mails.
  1834.  
  1835.   The mailagent was designed to make mail filtering as easy as it can
  1836.   be. It is highly configurable and fairly complete. Rules are
  1837.   specified in a lex-like style, with the full power of perl's regular
  1838.   expressions. The automaton supports the notion of mode, and header
  1839.   selection has many magic features built-in, to ease the rule writing
  1840.   process.
  1841.  
  1842.   The distribution comes with a set of examples, an exhaustive test
  1843.   suite, and naturally a detailed manual page. It should be noted that
  1844.   the mailagent will work even if your system administrator forbids "|
  1845.   programs" hooks in the ~/.forward, provided you have access to some
  1846.   sort of cron daemon.
  1847.  
  1848.   You can get a full email distribution of the latest release by
  1849.   sending an appropriate command to my own mailagent, such as:
  1850.  
  1851.     Subject: Command
  1852.  
  1853.     @SH maildist PATH mailagent -
  1854.  
  1855.   where PATH stands for YOUR email address, i.e. a path from me to
  1856.   you. [8.94]
  1857.  
  1858. ------------------------------
  1859.   
  1860. Subject: 7.2 Why slocal writes messages to system mailbox that from(1) can't read.
  1861. From: Bill Wohler <wohler@newt.com>
  1862.  
  1863.   Upgrade to MH 6.8 and set the RPATHS option.  Better yet, use a more
  1864.   MH-like command instead: "scan -file $MAIL".  [1.93]
  1865.  
  1866. ------------------------------
  1867.   
  1868. Subject: 7.3 Where can I read about slocal and the format of .maildelivery?
  1869. From: Bill Wohler <wohler@newt.com>
  1870.  
  1871.   See the slocal man page.
  1872.  
  1873.   Here is brief example of a .maildelivery file that stores messages
  1874.   to babble in a folder and the system mailbox, stores mh-users in a
  1875.   folder but not the system mailbox, and puts the rest in the system
  1876.   mailbox.
  1877.  
  1878.     to  mh-users  | A "/usr/local/lib/mh/rcvstore -create +lists/mh-users"
  1879.     cc  mh-users  | A "/usr/local/lib/mh/rcvstore -create +lists/mh-users"
  1880.     to  babble    | R "/usr/local/lib/mh/rcvstore -create +lists/babble"
  1881.     cc  babble    | R "/usr/local/lib/mh/rcvstore -create +lists/babble"
  1882.     default -     > ? /usr/spool/mail/wohler
  1883.  
  1884.   Your .forward file may look like (quotes necessary):
  1885.  
  1886.     "| /usr/local/lib/mh/slocal -user your_login"
  1887.  
  1888.   In some implementations, the "-user your_login" is not needed.  If
  1889.   not, manually running slocal with the flag will produce an error.
  1890.  
  1891.   See also chapter 11 in the MH book.
  1892.  
  1893.   Alternatives to slocal include deliver, procmail, and mailagent.
  1894.   Archie can help you find where they are kept.
  1895.  
  1896. ------------------------------
  1897.   
  1898. Subject: 7.4 How do I debug my .maildelivery file?
  1899. From: Bill Wohler <wohler@newt.com>
  1900.  
  1901.   Use as many of the following as necessary.
  1902.  
  1903.   Put a message into a file and call slocal directly on it.
  1904.  
  1905.     /usr/local/lib/mh/slocal -user $USER -verbose -debug < test-msg
  1906.  
  1907.   Modify your .forward to look like:
  1908.  
  1909.     "|/bin/sh -c 'exec >> /tmp/out 2>&1; /usr/local/lib/mh/slocal
  1910.     -user $USER -verbose -debug'"
  1911.  
  1912.   Or modify a rule in .maildelivery to look like this:
  1913.  
  1914.     to foo | R "set -xv; exec >/tmp/out 2>&1;
  1915.     /usr/local/lib/mh/rcvstore +foo"
  1916.  
  1917.   The previous examples are broken up for readability; the text must
  1918.   appear on one line.
  1919.  
  1920.   See also MH book section 11.11. [3.93]
  1921.  
  1922. ------------------------------
  1923.   
  1924. Subject: 7.5 Why isn't slocal working?
  1925. From: Bill Wohler <wohler@newt.com>
  1926.  
  1927.   If slocal doesn't appear to be doing anything, run the following
  1928.  
  1929.     /usr/local/lib/mh/slocal -user your_login -verbose < file
  1930.  
  1931.   where "file" is some message in a mail folder.  If you get something
  1932.   like:
  1933.  
  1934.     .maildelivery: ownership/modes bad (0, 154,154,0100666)
  1935.  
  1936.   your .maildelivery is writable by too many people.  Make it writable
  1937.   only by you by running "chmod 644 .maildelivery".
  1938.  
  1939.   See also "How do I debug my .maildelivery file?" [3.93]
  1940.  
  1941. ------------------------------
  1942.  
  1943. Subject: 8. ***** mh-e *****
  1944. From: Bill Wohler <wohler@newt.com>
  1945.  
  1946. ------------------------------
  1947.  
  1948. Subject: 8.1 ! Is there documentation for mh-e?
  1949. From: Bill Wohler <wohler@newt.com>
  1950.  
  1951.   Yes, sort of.  Run "C-h m" (describe-mode) in both scan and letter
  1952.   modes to see which commands and variables are available.  Browsing
  1953.   the code is also helpful. (See also mh-e documentation in "What
  1954.   references exist for MH?")  XXX [12.94]
  1955.  
  1956. ------------------------------
  1957.   
  1958. Subject: 8.2 How can mail aliases can be expanded in mh-e?
  1959. From: Stephen Gildea <gildea@x.org>
  1960.  
  1961.   Typing C-c C-w will show you the expanded list of recipients. [5.94]
  1962.  
  1963. ------------------------------
  1964.  
  1965. Subject: 9. ***** Xmh *****
  1966. From: Bill Wohler <wohler@newt.com>
  1967.  
  1968. ------------------------------
  1969.  
  1970. Subject: 9.1 How can I get xmh to use Emacs as the editor?
  1971. From: Bob Ellison <ellison@sei.cmu.edu>
  1972.  
  1973.   The modifications to xmh to support an external editor, annotations,
  1974.   and an append command can be found in the these places.
  1975.  
  1976.   ftp.x.org         /R5contrib/xmh-mods-R5-1.7.Z            37k
  1977.   ftp.sei.cmu.edu    /pub/xmh/xmh-mods-R5-1.7.Z            37k
  1978.             /pub/xmh/xmh-mods-R6-1.0.Z            37k
  1979.  
  1980. From: Andrew Wason <aw@bae.bellcore.com>
  1981.  
  1982.   As of R5, xmh has a new action proc called XmhShellCommand.  A
  1983.   string parameter will be executed as a shell command with the
  1984.   currently selected messages as parameters (or the current message if
  1985.   there are no selected messages).
  1986.  
  1987.   Using this new action, a couple of shell scripts, a window version
  1988.   of emacs (e.g. xemacs) and some elisp code, xmh can use emacs as its
  1989.   editor instead of the built in Athena text widget editor.  This
  1990.   doesn't require any source code changes to xmh.  These are included
  1991.   in the Appendix "Switching xmh's editor".
  1992.  
  1993. ------------------------------
  1994.   
  1995. Subject: 9.2 Does xmh support subfolders?
  1996. From: Steve Malowany <malowany@cenparmi.concordia.ca>
  1997.  
  1998.   Yes. Create one by invoking "Create Folder" as usual, and enter
  1999.   something like: existing-folder/new-sub-folder. You can then access
  2000.   the subfolder by popping up a menu over the "existing-folder" button
  2001.   item.
  2002.  
  2003.   But:
  2004.  
  2005. From: John Cooper <jsc@saxon.Eng.Sun.COM>
  2006.  
  2007.   The R5 version of xmh does *not* handle nested sub-folders.  If you
  2008.   create a folder as 'grab/some/bandwidth', xmh displays this
  2009.   folder name for the remainder of the session where it was created,
  2010.   BUT if you later re-run xmh, the folder is no longer visible to xmh.
  2011.  
  2012.   See also MH book section 15.6.2 (14.6.2).
  2013.  
  2014. ------------------------------
  2015.   
  2016. Subject: 9.3 How do I precede included messages with ">" when replying in xmh?
  2017. From: Len Makin <len@mel.dit.csiro.au>
  2018.  
  2019.   Include the following line in your ~/app-defaults/XMh file:
  2020.  
  2021.     Xmh*replyInsertFilter: "sed 's/^/> /'"
  2022.  
  2023.   or,
  2024.  
  2025.     Xmh.ReplyInsertFilter: /usr/local/lib/mh/mhl -form repl.filter
  2026.  
  2027. From: Andy Linton <andy.linton@comp.vuw.ac.nz>
  2028.  
  2029.   Using this means that you can chose to insert the original by use of
  2030.   the "Insert" button in the Draft message pane.  See "How do I
  2031.   include messages in repl with or without ">"?" to find examples of
  2032.   repl.filter.
  2033.  
  2034.   See also MH book sections 15.1.4 (14.1.4), 16.3.3 (15.2.3).
  2035.  
  2036. ------------------------------
  2037.  
  2038. Subject: Glossary
  2039. From: Bill Wohler <wohler@newt.com>
  2040.  
  2041.   MH    Mail Handler
  2042.   POP3    Post Office Protocol, RFC 1225
  2043.   MMDF    Multi-channel Memo Distribution Facility
  2044.   MIME    Multipurpose Internet Mail Extensions, RFC 1341, 1563
  2045.   IMAP    Internet Message Access Protocol, RFC 1064, 1176
  2046.  
  2047. ------------------------------
  2048.   
  2049. Subject: Acknowledgments
  2050. From: Bill Wohler <wohler@newt.com>
  2051.  
  2052. I'd like to thank the following people for providing ideas on the
  2053. layout of this article:
  2054.  
  2055. Joe Wells <jbw@bigbird.bu.edu>          Richard M. Stallman <rms@gnu.ai.mit.edu>
  2056. David Elliott <dce@smsc.sony.com>     Tom Christiansen <tchrist@perl.com>
  2057. Eugene N. Miya <eugene@nas.nasa.gov>
  2058.  
  2059.  
  2060. We are also grateful to the individuals mentioned below and in the
  2061. text of this document who have provided answers or other information
  2062. to make this a better document.  I regret that it is possible that
  2063. some names have been accidently omitted.  I would also like to thank
  2064. all the readers of comp.mail.mh.
  2065.  
  2066. Kim F. Storm <storm@olicom.dk>          Edward Vielmetti <emv@ox.com>
  2067.  
  2068. ------------------------------
  2069.   
  2070. Subject: Switching xmh's editor
  2071. From: Andrew Wason <aw@bae.bellcore.com>
  2072.  
  2073. #! /bin/sh
  2074. # This is a shell archive.  Remove anything before this line, then unpack
  2075. # it by saving it into a file and typing "sh file".  To overwrite existing
  2076. # files, type "sh file -c".  You can also feed this as standard input via
  2077. # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
  2078. # will see the following message at the end:
  2079. #        "End of shell archive."
  2080. # Contents:  README Xmh.ad xmh-command.el xmhcommand xmhemacs
  2081. # Wrapped by aw@jello on Fri Nov 15 17:10:34 1991
  2082. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  2083. if test -f 'README' -a "${1}" != "-c" ; then
  2084.   echo shar: Will not clobber existing file \"'README'\"
  2085. else
  2086. echo shar: Extracting \"'README'\" \(1269 characters\)
  2087. sed "s/^X//" >'README' <<'END_OF_FILE'
  2088. XThis is a short description of what to do with each of the enclosed files.
  2089. X
  2090. XXmh.ad
  2091. X  Merge this in with your xmh resources.  If you already have
  2092. X  user defined buttons, then you may need to renumber the
  2093. X  buttons in this resource file.
  2094. X
  2095. Xxmh-command.el
  2096. X  Byte compile this file and put it in your GNU emacs load-path.
  2097. X
  2098. Xxmhcommand
  2099. Xxmhemacs
  2100. X  Put these somewhere in your path.
  2101. X
  2102. X
  2103. XOnce you have installed these, restart the R5 xmh with the new
  2104. Xresources.  When you press the repl, forw or comp buttons
  2105. Xan xemacs window will come up with your draft message.
  2106. X
  2107. XOnce you have written your mail, save it and exit GNU emacs (C-xC-c).
  2108. XYou will be prompted if you want to send the current message.
  2109. XIf you enter 'y', the message will be sent and the output will
  2110. Xbe displayed in an emacs window (in case you use -verbose or -snoop).
  2111. XThen you will be prompted to exit emacs.  Enter 'y' when you are ready.
  2112. X
  2113. XIf you answered 'n' when prompted to send the message,
  2114. Xthen the draft message will be deleted and emacs will exit.
  2115. X
  2116. XYou can modify the Xmh.ad resources to add more buttons.
  2117. XAny MH command which accepts "+folder msg" can be used
  2118. X(e.g. a replx shell script which includes the body of the
  2119. Xmessage being replied to can be bound to a replx button)
  2120. X
  2121. X
  2122. XAndrew Wason
  2123. Xaw@bae.bellcore.com
  2124. END_OF_FILE
  2125. if test 1269 -ne `wc -c <'README'`; then
  2126.     echo shar: \"'README'\" unpacked with wrong size!
  2127. fi
  2128. # end of 'README'
  2129. fi
  2130. if test -f 'Xmh.ad' -a "${1}" != "-c" ; then
  2131.   echo shar: Will not clobber existing file \"'Xmh.ad'\"
  2132. else
  2133. echo shar: Extracting \"'Xmh.ad'\" \(457 characters\)
  2134. sed "s/^X//" >'Xmh.ad' <<'END_OF_FILE'
  2135. XXmh*CommandButtonCount:            3
  2136. X
  2137. XXmh*commandBox.button1.label:        repl
  2138. XXmh*commandBox.button1.translations:\
  2139. X    #override\n\
  2140. X    <Btn1Up>:    XmhShellCommand(xmhcommand y repl) unset()
  2141. X
  2142. XXmh*commandBox.button2.label:        forw
  2143. XXmh*commandBox.button2.translations:\
  2144. X    #override\n\
  2145. X    <Btn1Up>:    XmhShellCommand(xmhcommand y forw) unset()
  2146. X
  2147. XXmh*commandBox.button3.label:        comp
  2148. XXmh*commandBox.button3.translations:\
  2149. X    #override\n\
  2150. X    <Btn1Up>:    XmhShellCommand(xmhcommand n comp) unset()
  2151. END_OF_FILE
  2152. if test 457 -ne `wc -c <'Xmh.ad'`; then
  2153.     echo shar: \"'Xmh.ad'\" unpacked with wrong size!
  2154. fi
  2155. # end of 'Xmh.ad'
  2156. fi
  2157. if test -f 'xmh-command.el' -a "${1}" != "-c" ; then
  2158.   echo shar: Will not clobber existing file \"'xmh-command.el'\"
  2159. else
  2160. echo shar: Extracting \"'xmh-command.el'\" \(1294 characters\)
  2161. sed "s/^X//" >'xmh-command.el' <<'END_OF_FILE'
  2162. X;;; These functions are for use with xemacs and xmh.
  2163. X;;; The R5 xmh has a new action - XmhShellCommand which executes
  2164. X;;; a shell command with the current msg as an arg.
  2165. X;;; By executing something like:
  2166. X;;;    XmhShellCommand(xmhcommand repl)
  2167. X;;; you can use xemacs as your editor with xmh.
  2168. X;;;
  2169. X;;; The following elisp functions perform the basic whatnowproc functionality
  2170. X;;; (quitting and deleting, sending)
  2171. X;;;
  2172. X;;; Andrew Wason  aw@bae.bellcore.com
  2173. X
  2174. X
  2175. X;;; Override C-xC-c
  2176. X(define-key indented-text-mode-map "\C-x\C-c" 'xmh-command-send-or-delete)
  2177. X
  2178. X
  2179. X(setq mhdraft (getenv "mhdraft"))    ; save the filename of the draft
  2180. X
  2181. X
  2182. X(find-file mhdraft)            ; load the draft letter
  2183. X(indented-text-mode)
  2184. X(setq draft-buffer (current-buffer))    ; save the buffer the draft is in
  2185. X
  2186. X
  2187. X(defun xmh-command-send-or-delete ()
  2188. X  "Prompt to send or delete letter, then quit."
  2189. X  (interactive)
  2190. X  (set-buffer draft-buffer)
  2191. X  (if (y-or-n-p "Send message? ")
  2192. X      (progn
  2193. X    (save-buffer)                ; save the draft buffer
  2194. X    (message "Sending...")
  2195. X    (pop-to-buffer "MH mail delivery"); pop to a buffer for "send" output
  2196. X    (erase-buffer)
  2197. X    (call-process "send" nil t t mhdraft)    ; call MH "send"
  2198. X    (if (y-or-n-p "Exit? ")
  2199. X        (kill-emacs)))            ; exit emacs
  2200. X    (delete-file mhdraft)            ; delete the draft letter
  2201. X    (kill-emacs)))                ; exit emacs
  2202. END_OF_FILE
  2203. if test 1294 -ne `wc -c <'xmh-command.el'`; then
  2204.     echo shar: \"'xmh-command.el'\" unpacked with wrong size!
  2205. fi
  2206. # end of 'xmh-command.el'
  2207. fi
  2208. if test -f 'xmhcommand' -a "${1}" != "-c" ; then
  2209.   echo shar: Will not clobber existing file \"'xmhcommand'\"
  2210. else
  2211. echo shar: Extracting \"'xmhcommand'\" \(669 characters\)
  2212. sed "s/^X//" >'xmhcommand' <<'END_OF_FILE'
  2213. X#!/bin/sh
  2214. X# This shell should be invoked by the xmh XmhShellCommand() action as
  2215. X#   XmhShellCommand(xmhcommand y repl)
  2216. X#   XmhShellCommand(xmhcommand n comp) etc.
  2217. X# If the second arg is y, then the message list will be used.
  2218. X
  2219. X# We invoke the passed MH command on the identified message
  2220. X# (we must strip the message number and folder from the pathname)
  2221. X(if [ $1 = "y" ]
  2222. Xthen
  2223. X    $2 -whatnowproc xmhemacs +`dirname \`echo $3 | \
  2224. X        sed "s;\\\`mhpath +\\\`/;;"\`` `basename $3`
  2225. X
  2226. X# You can use this more readable version instead if you have ksh
  2227. X#    $2 -whatnowproc xmhemacs +$(dirname $(echo $3 | \
  2228. X#        sed "s;$(mhpath +)/;;")) $(basename $3)
  2229. X
  2230. Xelse
  2231. X    $2 -whatnowproc xmhemacs
  2232. Xfi)&
  2233. END_OF_FILE
  2234. if test 669 -ne `wc -c <'xmhcommand'`; then
  2235.     echo shar: \"'xmhcommand'\" unpacked with wrong size!
  2236. fi
  2237. chmod +x 'xmhcommand'
  2238. # end of 'xmhcommand'
  2239. fi
  2240. if test -f 'xmhemacs' -a "${1}" != "-c" ; then
  2241.   echo shar: Will not clobber existing file \"'xmhemacs'\"
  2242. else
  2243. echo shar: Extracting \"'xmhemacs'\" \(116 characters\)
  2244. sed "s/^X//" >'xmhemacs' <<'END_OF_FILE'
  2245. X#!/bin/sh
  2246. X# Invoke xemacs and load the xmh-command.el stuff.
  2247. X# xmhemacs is used by xmhcommand
  2248. Xxemacs -l xmh-command
  2249. END_OF_FILE
  2250. if test 116 -ne `wc -c <'xmhemacs'`; then
  2251.     echo shar: \"'xmhemacs'\" unpacked with wrong size!
  2252. fi
  2253. chmod +x 'xmhemacs'
  2254. # end of 'xmhemacs'
  2255. fi
  2256. echo shar: End of shell archive.
  2257. exit 0
  2258.  
  2259. ------------------------------
  2260.   
  2261. Subject: babyl2mh.pl
  2262. From: Vivek Khera <khera@cs.duke.edu>
  2263.  
  2264. #!/usr/gnu/bin/perl
  2265. # incorporate an RMAIL babyl file into an MH folder
  2266. #
  2267. # usage: babyl2mh +folder babyl-file
  2268. #
  2269. # V. Khera <khera@cs.duke.edu> 17-JUL-1991
  2270.  
  2271. # where to find rcvstore
  2272. $rcvstore = "/usr/local/lib/mh/rcvstore";
  2273.  
  2274. #
  2275. # pull out command line args
  2276. #
  2277. die "usage: babyl2mh +folder babyl-file\n" unless @ARGV == 2;
  2278.  
  2279. $folder = shift;
  2280. # make sure folder name starts with a "+"
  2281. (substr($folder,0,1) eq "+") || (substr($folder,0,0) = "+");
  2282. $bfname = shift;
  2283.  
  2284. print "Incorporating RMAIL file $bfname into MH folder $folder\n";
  2285.  
  2286. #
  2287. # read in babyl file.
  2288. #
  2289. $/ = "\037";    # this separates the records in a babyl file
  2290. $* = 1;        # records are multi-lines
  2291.  
  2292. open(BABYL,$bfname) || die "Couldn't open $bfname\n";
  2293.  
  2294. $_ = <BABYL>;    # discard header.
  2295.  
  2296. $msgnum = 0;
  2297.  
  2298. while (<BABYL>) {
  2299.   chop;        # get rid of delimeter
  2300.   s/\f(.|\n)*\*\*\* EOOH \*\*\*\n//;    # remove duplicate header information
  2301.   open(RCVSTORE,"|" . $rcvstore . " $folder");
  2302.   print RCVSTORE $_;
  2303.   $msgnum++;
  2304.   print "Message $msgnum done.\n";
  2305. }
  2306.  
  2307. ------------------------------
  2308.   
  2309. Subject: inco
  2310. From: Juergen Nickelsen <nickel@cs.tu-berlin.de>
  2311.  
  2312. #!/bin/sh
  2313. # Usage: inco [from [folder]]
  2314. # "from" defaults to $HOME/Mail/outbound, "folder" to +inbox.
  2315.  
  2316. lispfile=/tmp/inco.$$.el
  2317. input=${1-$HOME/Mail/outbound}
  2318. tmpmbox=/tmp/inc.$$.mbox
  2319. folder=${2-+inbox}
  2320.  
  2321. if [ $# -ge 3 ]; then
  2322.     echo Usage: `basename $0` [ from [ folder ]]
  2323.     exit 2
  2324. fi
  2325.  
  2326. trap "rm -f $lispfile $tmpmbox ; exit 1" 1 2 15
  2327.  
  2328. touch $tmpmbox
  2329. chmod 600 $tmpmbox
  2330.  
  2331. echo '(rmail-input "'$input'")
  2332. (rmail-last-message)
  2333. (setq last (rmail-what-message))
  2334. (rmail-show-message 1)
  2335. (while (not (equal (rmail-what-message) last))
  2336.   (rmail-output "'$tmpmbox'")
  2337.   (rmail-delete-forward nil))
  2338. (rmail-output "'$tmpmbox'")
  2339. (kill-buffer (current-buffer))
  2340. ' > $lispfile
  2341.  
  2342. emacs -batch -l $lispfile
  2343. inc -file $tmpmbox $folder
  2344.  
  2345. > $input
  2346. rm -f $lispfile $tmpmbox
  2347.  
  2348. ------------------------------
  2349.   
  2350. Subject: srvrsmtp.c patch
  2351. From: Paul Pomes <paul@uxc.cso.uiuc.edu>
  2352.  
  2353. >From the 5.67 sources:
  2354.  
  2355.   *** srvrsmtp.c-    Mon Feb 22 12:25:54 1993
  2356.   --- srvrsmtp.c    Mon Feb 22 12:29:09 1993
  2357.   ***************
  2358.   *** 384,389 ****
  2359.   --- 384,395 ----
  2360.               message("250", "Reset state");
  2361.               if (InChild)
  2362.                   finis();
  2363.   +
  2364.   +              /* clean up a bit if running in parent */
  2365.   +              hasmail = FALSE;
  2366.   +              dropenvelope(CurEnv);
  2367.   +              CurEnv = newenvelope(CurEnv);
  2368.   +              CurEnv->e_flags = BlankEnvelope.e_flags;
  2369.               break;
  2370.  
  2371.             case CMDVRFY:        /* vrfy -- verify address */
  2372.  
  2373. ------------------------------
  2374.   
  2375. Subject: mhn.c patch
  2376. From: Casper H.S. Dik <casper@fwi.uva.nl>
  2377.  
  2378.   *** mh-6.8.3/uip/mhn.c.org    Wed Dec  1 05:01:36 1993
  2379.   --- mh-6.8.3/uip/mhn.c    Fri Jun  3 12:38:04 1994
  2380.   ***************
  2381.   *** 1014,1019 ****
  2382.   --- 1014,1020 ----
  2383.     #include "../h/mhn.h"
  2384.  
  2385.  
  2386.   + #undef si_value
  2387.     struct str2init {
  2388.     char   *si_key;
  2389.     int        si_value;
  2390.  
  2391. ------------------------------
  2392.   
  2393. Subject: + mhn.c patch 2
  2394. From: Keith Moore <moore@cs.utk.edu>
  2395.  
  2396.   *** uip/mhn.c   Tue Sep 13 23:06:18 1994
  2397.   --- uip/mhn.c.NEW       Tue Sep 13 22:58:10 1994
  2398.   ***************
  2399.   *** 3035,3043 ****
  2400.   --- 3035,3048 ----
  2401.       if (((cp = m_find (buffer)) == NULL || *cp == 0)
  2402.           && (cp = ct -> c_showproc) == NULL) {
  2403.           if (!alternate)
  2404.   + #ifdef UTK
  2405.   +               /* treat as multipart/mixed per rfc 1521 */
  2406.   +               return show_multi (ct, serial, alternate);
  2407.   + #else
  2408.           content_error (NULLCP, ct,
  2409.                  "don't know how to display content");
  2410.  
  2411.   + #endif
  2412.           return NOTOK;
  2413.       }
  2414.     }
  2415.  
  2416. Local Variables:
  2417. mode: outline
  2418. outline-regexp: "^Subject:"
  2419. fill-prefix: "  "
  2420. End:
  2421.